Symulowanie błędów z interfejsów API programu Microsoft Graph
Microsoft Graph to kolekcja interfejsów API, które zapewniają dostęp do danych i szczegółowych informacji na platformie Microsoft 365. W przypadku korzystania z programu Microsoft Graph w aplikacji należy przetestować sposób obsługi błędów interfejsu API przez aplikację. Serwer proxy deweloperów umożliwia symulowanie błędów w dowolnym interfejsie API programu Microsoft Graph przy użyciu polecenia GraphRandomErrorPlugin
.
Narzędzie GraphRandomErrorPlugin
jest zoptymalizowane pod kątem pracy z programem Microsoft Graph i symuluje określone błędy, które program Microsoft Graph może zwrócić.
Aby rozpocząć, włącz element GraphRandomErrorPlugin
w pliku konfiguracji.
{
"$schema": "https://raw.githubusercontent.com/microsoft/dev-proxy/main/schemas/v0.14.1/rc.schema.json",
"plugins": [
{
"name": "GraphRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
"configSection": "graphRandomErrorPlugin",
"urlsToWatch": [
"https://graph.microsoft.com/v1.0/*",
"https://graph.microsoft.com/beta/*",
"https://graph.microsoft.us/v1.0/*",
"https://graph.microsoft.us/beta/*",
"https://dod-graph.microsoft.us/v1.0/*",
"https://dod-graph.microsoft.us/beta/*",
"https://microsoftgraph.chinacloudapi.cn/v1.0/*",
"https://microsoftgraph.chinacloudapi.cn/beta/*"
]
}
]
}
Napiwek
Powyższy fragment kodu nasłuchuje żądań do programu Microsoft Graph we wszystkich chmurach firmy Microsoft. Jeśli chcesz symulować błędy tylko w określonej chmurze firmy Microsoft, usuń adresy URL, których nie potrzebujesz.
Uruchom serwer proxy dewelopera przy użyciu pliku konfiguracji i użyj aplikacji, aby zobaczyć, jak obsługuje błędy. Dla każdego zgodnego żądania serwer proxy deweloperów określa, czy symulować błąd, czy przekazać żądanie do programu Microsoft Graph przy użyciu skonfigurowanego współczynnika błędów. Gdy serwer proxy deweloperów symuluje błąd, losowo wybiera jeden z błędów używanych przez program Microsoft Graph i zwraca odpowiedź o błędzie do aplikacji.
Konfigurowanie błędów w celu symulowania
Domyślnie program GraphRandomErrorPlugin
symuluje następujące błędy.
Metoda HTTP | Możliwe błędy |
---|---|
GET |
429 Too Many Requests , , 500 Internal Server Error , 502 Bad Gateway , , 503 Service Unavailable 504 Gateway Timeout |
POST |
429 Too Many Requests , , 500 Internal Server Error , 502 Bad Gateway , 503 Service Unavailable , , 504 Gateway Timeout 507 Insufficient Storage |
PUT |
429 Too Many Requests , , 500 Internal Server Error , 502 Bad Gateway , 503 Service Unavailable , , 504 Gateway Timeout 507 Insufficient Storage |
PATCH |
429 Too Many Requests , , 500 Internal Server Error , 502 Bad Gateway , , 503 Service Unavailable 504 Gateway Timeout |
DELETE |
429 Too Many Requests , , 500 Internal Server Error , 502 Bad Gateway , 503 Service Unavailable , , 504 Gateway Timeout 507 Insufficient Storage |
Jeśli chcesz przetestować określone zachowania, takie jak ograniczanie przepustowości, skonfiguruj wtyczkę tak, aby korzystała tylko z odpowiednich błędów przy użyciu --allowed-errors
opcji .
devproxy --allowed-errors 429
Alternatywnie można skonfigurować allowedErrors
właściwość w obiekcie w graphRandomErrorPlugin
pliku konfiguracji.
{
"graphRandomErrorPlugin": {
"allowedErrors": [ 429 ]
}
}
Symulowanie błędów w żądaniach wsadowych programu Microsoft Graph
Serwer proxy deweloperów symuluje błędy w żądaniach wsadowych do programu Microsoft Graph w taki sam sposób, jak w przypadku zwykłych żądań. Gdy serwer proxy deweloperów kończy się niepowodzeniem co najmniej jednego żądania wsadowego, zwraca 424 Failed Dependency
odpowiedź dla całego żądania wsadowego, podobnie jak w przypadku programu Microsoft Graph.