Simular erros de APIs do Microsoft Graph
O Microsoft Graph é uma coleção de APIs que fornecem acesso a dados e insights no Microsoft 365. Ao usar o Microsoft Graph em seu aplicativo, você deve testar como seu aplicativo lida com erros de API. O Dev Proxy permite simular erros em qualquer API do Microsoft Graph usando o GraphRandomErrorPlugin
.
O GraphRandomErrorPlugin
é otimizado para funcionar com o Microsoft Graph e simula os erros específicos que o Microsoft Graph pode retornar.
Para começar, habilite o GraphRandomErrorPlugin
em seu arquivo de configuração.
{
"$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/*"
]
}
]
}
Dica
O snippet acima escuta solicitações para o Microsoft Graph em todas as nuvens da Microsoft. Se você quiser simular erros apenas em uma nuvem específica da Microsoft, remova as URLs desnecessárias.
Inicie o Dev Proxy com seu arquivo de configuração e use seu aplicativo para ver como ele lida com os erros. Para cada solicitação correspondente, o Proxy de Desenvolvimento determina se deve simular um erro ou passar a solicitação para o Microsoft Graph usando a taxa de falha configurada. Quando o Proxy de Desenvolvimento simula um erro, ele seleciona aleatoriamente um dos erros que o Microsoft Graph usa e retorna uma resposta de erro ao seu aplicativo.
Configure erros para simular
Por padrão, o GraphRandomErrorPlugin
simula os erros a seguir.
Método HTTP | Possíveis erros |
---|---|
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 você quiser testar comportamentos específicos, como limitação, configure o plug-in para usar apenas os erros relevantes usando a --allowed-errors
opção.
devproxy --allowed-errors 429
Como alternativa, você pode configurar a allowedErrors
graphRandomErrorPlugin
propriedade no objeto em seu arquivo de configuração.
{
"graphRandomErrorPlugin": {
"allowedErrors": [ 429 ]
}
}
Simular erros em solicitações em lote do Microsoft Graph
O Proxy de Desenvolvimento simula erros em solicitações em lote para o Microsoft Graph da mesma forma que faz para solicitações regulares. Quando o Proxy de Desenvolvimento falha em uma ou mais solicitações em uma solicitação em lote, ele retorna uma 424 Failed Dependency
resposta para toda a solicitação em lote, assim como o Microsoft Graph faria.