Compartir a través de


Simulación de errores de las API de Microsoft Graph

Microsoft Graph es una colección de API que proporcionan acceso a datos e información sobre Microsoft 365. Al usar Microsoft Graph en la aplicación, debe probar cómo controla la aplicación los errores de API. El proxy de desarrollo permite simular errores en cualquier API de Microsoft Graph mediante GraphRandomErrorPlugin.

GraphRandomErrorPlugin está optimizado para trabajar con Microsoft Graph y simula los errores específicos que Microsoft Graph puede devolver.

Para empezar, habilite en el GraphRandomErrorPlugin archivo de configuración.

{
  "$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/*"
      ]
    }
  ]
}

Sugerencia

El fragmento de código anterior escucha las solicitudes a Microsoft Graph en todas las nubes de Microsoft. Si solo desea simular errores en una nube específica de Microsoft, quite las direcciones URL que no necesita.

Inicie Dev Proxy con el archivo de configuración y use la aplicación para ver cómo controla los errores. Para cada solicitud coincidente, el proxy de desarrollo determina si se simula un error o se pasa la solicitud a Microsoft Graph mediante la tasa de errores configurada. Cuando dev Proxy simula un error, selecciona aleatoriamente uno de los errores que usa Microsoft Graph y devuelve una respuesta de error a la aplicación.

Configuración de errores para simular

De forma predeterminada, GraphRandomErrorPlugin simula los errores siguientes.

Método HTTP Errores posibles
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

Si desea probar comportamientos específicos, como la limitación, configure el complemento para que solo use los errores pertinentes mediante la --allowed-errors opción .

devproxy --allowed-errors 429

Como alternativa, puede configurar la allowedErrors propiedad en el graphRandomErrorPlugin objeto del archivo de configuración.

{
  "graphRandomErrorPlugin": {
    "allowedErrors": [ 429 ]
  }
}

Simulación de errores en solicitudes por lotes de Microsoft Graph

El proxy de desarrollo simula errores en solicitudes por lotes a Microsoft Graph de la misma manera que para las solicitudes normales. Cuando el proxy de desarrollo produce un error en una o varias solicitudes en una solicitud por lotes, devuelve una 424 Failed Dependency respuesta para toda la solicitud por lotes, como lo haría Microsoft Graph.