Co to jest Dev Proxy?

Dev Proxy to symulator API, który umożliwia bezproblemowe testowanie aplikacji poza standardowymi scenariuszami.

Przetestujesz aplikację, aby upewnić się, że działa ona zgodnie z oczekiwaniami. Ale co zrobić, jeśli używane interfejsy API kończą się niepowodzeniem? Czy aplikacja utraci dane klienta? Jak to przetestować? Symulowanie błędów interfejsu API jest trudne. W końcu piszesz kod, którego nie będziesz wysyłać ani gorzej: w ogóle nie testujesz. Dlatego utworzyliśmy serwer proxy deweloperów, aby symulować błędy interfejsu API, dzięki czemu można łatwo przetestować aplikację bez konieczności zmieniania kodu.

Korzystając z Dev Proxy, możesz:

Dev Proxy to narzędzie wiersza polecenia, które działa na dowolnej platformie. Ponieważ przechwytuje żądania sieciowe, działa z dowolnym typem aplikacji i stosu technologicznego. Dev Proxy jest oprogramowaniem open source i jest bezpłatne do użycia.

Dla kogo jest Dev Proxy?

Dev Proxy pomaga programistom, którzy:

  • Twórz aplikacje wywołujące interfejsy API — testuj, jak aplikacja radzi sobie z błędami i limitami liczby żądań narzucanymi przez interfejsy API, takie jak GitHub, OpenAI i Anthropic, bez zmiany kodu
  • Tworzenie aplikacji za pomocą programu Microsoft Graph — uzyskiwanie wskazówek dotyczących uprawnień i najlepszych rozwiązań
  • Projektuj API — prototypowe i makietowe API przed wdrożeniem
  • Automatyzacja testowania — integracja testowania chaosu z pipeline'ami CI/CD

Kiedy należy używać serwera proxy deweloperskiego

W razie potrzeby użyj serwera proxy deweloperskiego:

  • Testowanie odporności interfejsu API bez modyfikowania kodu aplikacji
  • Praca z dowolnym stosem technologicznym (przeglądarka, Node.js, .NET, Python itp.)
  • Symulowanie błędów dla interfejsów API, które nie są sterowane
  • Uzyskaj wskazówki dotyczące najlepszych rozwiązań dotyczących programu Microsoft Graph
  • Automatyzowanie testowania chaosu w potokach ciągłej integracji/ciągłego wdrażania

Rozważ inne podejścia, gdy:

  • Do mockowania w przeglądarce potrzebujesz tylko dla testów jednostkowych frontendu.
  • Tworzysz interfejs API i musisz przetestować umowę
  • Należy programowo zmodyfikować treści żądań/odpowiedzi (Dev Proxy może to zrobić, ale dedykowane narzędzia mogą być prostsze)

Szybki start według scenariusza

Wybierz ścieżkę na podstawie tego, co chcesz osiągnąć:

Co chcesz zrobić? Time Guide
Testowanie jak aplikacja obsługuje błędy interfejsu API 5 minut Testowanie z błędami losowymi
Przetestuj, czy moja aplikacja obsługuje limity szybkości API GitHub 15 minut Testowanie limitów żądań API GitHub
Sprawdź, czy moja aplikacja obsługuje limity szybkości OpenAI 10 minut Testowanie limitów szybkości żądań interfejsu OpenAI
Symulacja interfejsu API, który jeszcze nie istnieje 10 minut Symulowanie interfejsu API CRUD
Sprawdzanie moich uprawnień programu Microsoft Graph 10 minut Wykrywanie minimalnych uprawnień
Omówienie interfejsów API wywoływanych przez moją aplikację 5 minut Odkryj adresy URL do oglądania
Automatyzacja testowania API w CI/CD 15 minut Użyj Dev Proxy w CI/CD

Napraw problem z interfejsem API

Czy wystąpił błąd z interfejsu API, czy też tworzysz aplikację lub agenta sztucznej inteligencji? Zacznij od problemu:

Wypróbuj go z ustawieniem predefiniowanym

Predefiniowane ustawienia są gotowymi konfiguracjami Dev Proxy dla określonych interfejsów API. Aby zobaczyć, jak aplikacja obsługuje limity szybkości i błędy wywoływanego interfejsu API, zacznij od zainstalowania Dev Proxy.

winget install DevProxy.DevProxy --silent

Po zakończeniu instalacji otwórz nowy wiersz polecenia, aby został w nim uwzględniony zaktualizowany PATH.

brew tap dotnet/dev-proxy
brew install dev-proxy
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"

Następnie pobierz ustawienie predefiniowane dla interfejsu API.

API Polecenie
GitHub devproxy config get github-rate-limiting
OpenAI devproxy config get openai-throttling
Anthropic devproxy config get anthropic-throttling
Microsoft Graph devproxy config get microsoft-graph-rate-limiting

Uruchom Dev Proxy z predefiniowanym ustawieniem. Zastąp github-rate-limiting pobranym ustawieniem predefiniowanym. Przy pierwszym uruchomieniu Dev Proxy należy zaufać jego certyfikatowi.

devproxy --config-file "~dataFolder/configs/github-rate-limiting/.devproxy/devproxyrc.json"

Uruchom aplikację jak zwykle. Nadal wywołuje on rzeczywiste adresy URL interfejsu API, a Dev Proxy symuluje limity szybkości i błędy interfejsu API.

Aby uzyskać ustawienia wstępne dla innych interfejsów API, zobacz galerię przykładów Dev Proxy.

Jak aplikacja obsługuje błędy interfejsu API?

Zobacz także