Freigeben über


Simulieren von Fehlern aus Microsoft Graph-APIs

Microsoft Graph ist eine Sammlung von APIs, die Ihnen Zugriff auf Daten und Einblicke in Microsoft 365 bieten. Wenn Sie Microsoft Graph in Ihrer App verwenden, sollten Sie testen, wie Ihre App API-Fehler behandelt. Dev Proxy ermöglicht es Ihnen, Fehler in einer beliebigen Microsoft Graph-API mithilfe der GraphRandomErrorPlugin.

Dies GraphRandomErrorPlugin ist für die Arbeit mit Microsoft Graph optimiert und simuliert die spezifischen Fehler, die Microsoft Graph zurückgeben kann.

Aktivieren Sie zunächst die GraphRandomErrorPlugin Konfigurationsdatei.

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

Tipp

Der obige Codeausschnitt lauscht auf Anforderungen an Microsoft Graph in allen Microsoft-Clouds. Wenn Sie nur Fehler in einer bestimmten Microsoft-Cloud simulieren möchten, entfernen Sie die URLs, die Sie nicht benötigen.

Starten Sie Dev Proxy mit Ihrer Konfigurationsdatei, und verwenden Sie Ihre App, um zu sehen, wie die Fehler behandelt werden. Für jede übereinstimmende Anforderung bestimmt Dev Proxy, ob ein Fehler simuliert oder die Anforderung mithilfe der konfigurierten Fehlerrate an Microsoft Graph übergeben werden soll. Wenn Dev Proxy einen Fehler simuliert, wählt er zufällig einen der von Microsoft Graph verwendeten Fehler aus und gibt eine Fehlerantwort an Ihre App zurück.

Konfigurieren von Fehlern zum Simulieren

Standardmäßig werden die GraphRandomErrorPlugin folgenden Fehler simuliert.

HTTP-Methode Mögliche Fehler:
GET 429 Too Many Requests, , 500 Internal Server Error502 Bad Gateway, , 503 Service Unavailable504 Gateway Timeout
POST 429 Too Many Requests, , 500 Internal Server Error502 Bad Gateway, 503 Service Unavailable, , 504 Gateway Timeout507 Insufficient Storage
PUT 429 Too Many Requests, , 500 Internal Server Error502 Bad Gateway, 503 Service Unavailable, , 504 Gateway Timeout507 Insufficient Storage
PATCH 429 Too Many Requests, , 500 Internal Server Error502 Bad Gateway, , 503 Service Unavailable504 Gateway Timeout
DELETE 429 Too Many Requests, , 500 Internal Server Error502 Bad Gateway, 503 Service Unavailable, , 504 Gateway Timeout507 Insufficient Storage

Wenn Sie bestimmte Verhaltensweisen testen möchten, z. B. Drosselung, konfigurieren Sie das Plug-In so, dass nur die relevanten Fehler mit der --allowed-errors Option verwendet werden.

devproxy --allowed-errors 429

Alternativ können Sie die allowedErrors Eigenschaft im Objekt in graphRandomErrorPlugin Ihrer Konfigurationsdatei konfigurieren.

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

Simulieren von Fehlern in Microsoft Graph-Batchanforderungen

Dev Proxy simuliert Fehler in Batchanforderungen an Microsoft Graph auf die gleiche Weise wie bei regulären Anforderungen. Wenn Dev Proxy eine oder mehrere Anforderungen in einer Batchanforderung fehlschlägt, wird eine 424 Failed Dependency Antwort für die gesamte Batchanforderung zurückgegeben, genau wie Microsoft Graph.