Simular erros de APIs do Microsoft Graph
O Microsoft Graph é uma coleção de APIs que lhe dão acesso a dados e informações sobre o 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 trabalhar com o Microsoft Graph e simula os erros específicos que o Microsoft Graph pode retornar.
Para começar, habilite o GraphRandomErrorPlugin
no 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/*"
]
}
]
}
Gorjeta
O trecho acima escuta solicitações para o Microsoft Graph em todas as nuvens da Microsoft. Se você quiser apenas simular erros em uma nuvem específica da Microsoft, remova as URLs de que não precisa.
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 Dev Proxy simula um erro, ele seleciona aleatoriamente um dos erros usados pelo Microsoft Graph e retorna uma resposta de erro ao seu aplicativo.
Configurar erros para simular
Por padrão, o GraphRandomErrorPlugin
simula os seguintes erros.
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 Dev Proxy simula erros em solicitações em lote para o Microsoft Graph da mesma forma que faz para solicitações regulares. Quando o Dev Proxy falha uma ou mais solicitações em uma solicitação em lote, ele retorna uma 424 Failed Dependency
resposta para a solicitação em lote inteira, assim como o Microsoft Graph faria.