Microsoft Graph Developer Proxy を使ってみる
はじめに
2022 年 12 月に Microsoft Graph Developer Proxy というツールがパブリック プレビューで公開されました。
2023 年 1 月にバージョン 0.3 が公開されています。
Microsoft Graph Developer Proxy を使うと Microsoft Graph で発生するスロットリングのエラー (429 HTTP ステータスなど) をモックすることができます。通常このエラーは環境依存であり、開発時に発生することが難しいという問題を抱えていましたが、任意にエラーを発生させることができるので、回復性の高いアプリケーションを作成するのに役立ちます。また応答データをモックして任意のデータを返すこともできます。
インストール
Microsoft Graph Developer Proxy は .NET 6 のアプリケーションであり Windows、Linux、MacOS で動作します。インストールは以下に手順があります。
Windows の場合は Release から最新のパッケージをダウンロードします。環境変数の追加は任意です。MacOS の場合は追加の手順が必要になります。
- バイナリ ファイルに実行権限をつける (chmod)
- アプリケーションを信頼する
- 証明書を信頼する
- プロキシの設定を追加する
実行する
コマンドラインから Microsoft Graph Developer Proxy を実行します。
./msgraph-developer-proxy
あとは開発しているアプリケーションを実行すると Microsoft Graph Developer Proxy が任意に HTTP エラーを返すようになります。エラーを返す頻度やエラーコードはコマンドラインの引数で指定することができます。
./msgraph-developer-proxy --failure-rate 50 --allowed-errors 429 503
パッケージに含まれる appsettings.json
でプロキシする URL を指定することができます。既定では SharePoint REST API の URL も入っているようですね。
パッケージには含まれていませんが responses.json
を作成すると応答データをモックできます。
おわりに
スロットリングに関してはトラブルになることが多いので事前にどうなるのかをテストできるのは非常に心強いですね。
Discussion