次の方法で共有


Microsoft Graph API からのエラーをシミュレートする

Microsoft Graph は、Microsoft 365 のデータと分析情報へのアクセスを提供する API のコレクションです。 アプリで Microsoft Graph を使用する場合は、アプリが API エラーを処理する方法をテストする必要があります。 開発プロキシを使用すると、 GraphRandomErrorPluginを使用して、Microsoft Graph API のエラーをシミュレートできます。

GraphRandomErrorPluginは、Microsoft Graph で動作するように最適化されており、Microsoft Graph から返される特定のエラーをシミュレートします。

開始するには、構成ファイルで GraphRandomErrorPlugin を有効にします。

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

ヒント

上記のスニペットは、すべての Microsoft クラウドで Microsoft Graph への要求をリッスンします。 特定の Microsoft クラウドでエラーのみをシミュレートする場合は、不要な URL を削除します。

構成ファイルで開発プロキシを起動し、アプリを使用してエラーの処理方法を確認します。 一致する要求ごとに、Dev Proxy は、 構成されたエラー率を使用して、エラーをシミュレートするか、Microsoft Graph に要求を渡すかを決定します。 開発プロキシは、エラーをシミュレートするときに、Microsoft Graph で使用されるエラーの 1 つをランダムに選択し、アプリにエラー応答を返します。

シミュレートするエラーを構成する

既定では、 GraphRandomErrorPlugin は次のエラーをシミュレートします。

HTTP メソッド 考えられるエラー
GET 429 Too Many Requests500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout
POST 429 Too Many Requests500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout507 Insufficient Storage
PUT 429 Too Many Requests500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout507 Insufficient Storage
PATCH 429 Too Many Requests500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout
DELETE 429 Too Many Requests500 Internal Server Error502 Bad Gateway503 Service Unavailable504 Gateway Timeout507 Insufficient Storage

調整などの特定の動作をテストする場合は、 --allowed-errors オプションを使用して関連するエラーのみを使用するようにプラグインを構成します。

devproxy --allowed-errors 429

または、構成ファイルのgraphRandomErrorPlugin オブジェクトでallowedErrors プロパティを構成することもできます。

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

Microsoft Graph バッチ要求でエラーをシミュレートする

開発プロキシは、通常の要求の場合と同じ方法で、Microsoft Graph へのバッチ要求のエラーをシミュレートします。 開発プロキシは、バッチ要求内の 1 つ以上の要求に失敗すると、Microsoft Graph と同様に、バッチ要求全体に対する 424 Failed Dependency 応答を返します。