Simulare gli errori dalle API Microsoft Graph
Microsoft Graph è una raccolta di API che consentono di accedere ai dati e alle informazioni dettagliate su Microsoft 365. Quando si usa Microsoft Graph nell'app, è necessario testare il modo in cui l'app gestisce gli errori dell'API. Dev Proxy consente di simulare gli errori in qualsiasi API Microsoft Graph usando GraphRandomErrorPlugin
.
GraphRandomErrorPlugin
è ottimizzato per lavorare con Microsoft Graph e simula gli errori specifici che Microsoft Graph può restituire.
Per iniziare, abilitare nel GraphRandomErrorPlugin
file di configurazione.
{
"$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/*"
]
}
]
}
Suggerimento
Il frammento di codice precedente è in ascolto delle richieste a Microsoft Graph in tutti i cloud Microsoft. Se si vogliono simulare solo gli errori in un cloud Microsoft specifico, rimuovere gli URL non necessari.
Avviare Dev Proxy con il file di configurazione e usare l'app per vedere come gestisce gli errori. Per ogni richiesta corrispondente, Dev Proxy determina se simulare un errore o passare la richiesta a Microsoft Graph usando la frequenza di errore configurata. Quando Dev Proxy simula un errore, seleziona in modo casuale uno degli errori usati da Microsoft Graph e restituisce una risposta di errore all'app.
Configurare gli errori per simulare
Per impostazione predefinita, GraphRandomErrorPlugin
simula gli errori seguenti.
HTTP method (Metodo HTTP) | Possibili errori |
---|---|
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 |
Se si desidera testare comportamenti specifici, ad esempio la limitazione delle richieste, configurare il plug-in per usare solo gli errori rilevanti usando l'opzione --allowed-errors
.
devproxy --allowed-errors 429
In alternativa, è possibile configurare la allowedErrors
proprietà nell'oggetto graphRandomErrorPlugin
nel file di configurazione.
{
"graphRandomErrorPlugin": {
"allowedErrors": [ 429 ]
}
}
Simulare gli errori nelle richieste batch di Microsoft Graph
Dev Proxy simula gli errori nelle richieste batch a Microsoft Graph allo stesso modo delle richieste regolari. Quando Dev Proxy non riesce una o più richieste in una richiesta batch, restituisce una 424 Failed Dependency
risposta per l'intera richiesta batch, proprio come farebbe Microsoft Graph.