Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Visão geral
Objetivo: Testar como seu aplicativo lida com erros de API do Microsoft Graph
Tempo: 10 minutos
Plugins:GraphRandomErrorPlugin
Pré-requisitos:Configurar o Proxy de Desenvolvimento
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 recurso GraphRandomErrorPlugin em seu arquivo de configuração.
Arquivo: devproxyrc.json
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json",
"plugins": [
{
"name": "GraphRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.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 Dev Proxy simula um erro, ele seleciona aleatoriamente um dos erros que o Microsoft Graph usa e retorna uma resposta de erro ao seu aplicativo.
Configurar 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 Unavailable504 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 Unavailable504 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 opção --allowed-errors.
devproxy --allowed-errors 429
Como alternativa, você pode configurar a propriedade allowedErrors no objeto graphRandomErrorPlugin em seu arquivo de configuração.
Arquivo: devproxyrc.json
{
"graphRandomErrorPlugin": {
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/graphrandomerrorplugin.schema.json",
"allowedErrors": [ 429 ]
}
}
O Proxy de Desenvolvimento usa apenas os erros permitidos que se aplicam a cada método HTTP, conforme listado na tabela anterior. Se nenhum dos erros permitidos se aplicar a um método, o Dev Proxy passará solicitações com esse método para o Microsoft Graph. Por exemplo, se você permitir apenas 507, o Proxy de Desenvolvimento falhará nas solicitações POST, PUT e DELETE, mas deixará passar as solicitações GET e PATCH. O Proxy de Desenvolvimento também encaminha solicitações com métodos que não estão listados na tabela, como HEAD ou OPTIONS.
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 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.
Se qualquer solicitação no lote usar um método para o qual nenhum dos erros permitidos se aplicar, o Dev Proxy passará todo o lote para Microsoft Graph, pois uma resposta em lote deve incluir uma resposta para cada solicitação no lote.
Consulte também
- GraphRandomErrorPlugin – Referência completa
- Simular limitação de taxa (throttling) em APIs do Microsoft 365 - Testes específicos de limitação de taxa
- Testar meu aplicativo com erros aleatórios – simulação de erro genérica
- Glossário – Terminologia do Proxy de Desenvolvimento