Simulace chyb z rozhraní Microsoft Graph API
Microsoft Graph je kolekce rozhraní API, která poskytují přístup k datům a přehledům v Microsoftu 365. Když ve své aplikaci používáte Microsoft Graph, měli byste otestovat, jak aplikace zpracovává chyby rozhraní API. Dev Proxy umožňuje simulovat chyby v libovolném rozhraní Microsoft Graph API pomocí nástroje GraphRandomErrorPlugin
.
Je GraphRandomErrorPlugin
optimalizovaná pro práci s Microsoft Graphem a simuluje konkrétní chyby, které Může Microsoft Graph vrátit.
Začněte tím, že povolíte GraphRandomErrorPlugin
konfigurační soubor.
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v0.24.0/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/*"
]
}
]
}
Tip
Výše uvedený fragment kódu naslouchá žádostem o Microsoft Graph ve všech cloudech Microsoftu. Pokud chcete simulovat chyby jenom v konkrétním cloudu Microsoftu, odeberte adresy URL, které nepotřebujete.
Spusťte dev Proxy s konfiguračním souborem a pomocí aplikace zjistěte, jak tyto chyby zpracovává. Pro každý odpovídající požadavek určuje vývojový proxy server, jestli se má simulovat chyba, nebo předat požadavek do Microsoft Graphu pomocí nakonfigurované míry selhání. Když dev proxy simuluje chybu, náhodně vybere jednu z chyb, které Microsoft Graph používá, a vrátí chybovou odpověď na vaši aplikaci.
Konfigurace chyb pro simulaci
Ve výchozím nastavení GraphRandomErrorPlugin
simuluje následující chyby.
Metoda HTTP: | Možné chyby |
---|---|
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 |
Pokud chcete otestovat konkrétní chování, například omezování, nakonfigurujte modul plug-in tak, aby používal pouze relevantní chyby pomocí této --allowed-errors
možnosti.
devproxy --allowed-errors 429
Alternativně můžete vlastnost v objektu allowedErrors
v konfiguračním graphRandomErrorPlugin
souboru nakonfigurovat.
{
"graphRandomErrorPlugin": {
"allowedErrors": [ 429 ]
}
}
Simulace chyb v dávkových požadavcích Microsoft Graphu
Dev Proxy simuluje chyby v dávkových požadavcích do Microsoft Graphu stejným způsobem jako u běžných požadavků. Když dev proxy selže jeden nebo více požadavků v dávkovém požadavku, vrátí 424 Failed Dependency
odpověď na celý požadavek dávky, stejně jako v Microsoft Graphu.