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 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 |
調整などの特定の動作をテストする場合は、 --allowed-errors
オプションを使用して関連するエラーのみを使用するようにプラグインを構成します。
devproxy --allowed-errors 429
または、構成ファイルのgraphRandomErrorPlugin
オブジェクトでallowedErrors
プロパティを構成することもできます。
{
"graphRandomErrorPlugin": {
"allowedErrors": [ 429 ]
}
}
Microsoft Graph バッチ要求でエラーをシミュレートする
開発プロキシは、通常の要求の場合と同じ方法で、Microsoft Graph へのバッチ要求のエラーをシミュレートします。 開発プロキシは、バッチ要求内の 1 つ以上の要求に失敗すると、Microsoft Graph と同様に、バッチ要求全体に対する 424 Failed Dependency
応答を返します。
Dev Proxy