Webhookのデバッグに便利なツール「Beeceptor」の紹介
- 2019年5月24日
- by SendGrid
- Category: 技術ネタ
SendGridのEvent WebhookやParse Webhookを試すとき、HTTPのエンドポイントを手軽に準備できるツールを使うと便利です。「Webhookのデバッグ」で紹介しているツールの他に米国SendGrid社が紹介しているものがいくつかあるので、本日はその中から「Beeceptor」についてご紹介します。
Beeceptorには主に次のような機能があります。
- HTTPのエンドポイントを作成して受信結果を表示する機能
- 応答コードとレスポンスを自由に変更できるモックAPI機能
- HTTPリクエストを中継するプロキシ機能
今回のブログではSendGridのEvent Webhookを例に1と2の機能を紹介します。
使い方
Beeceptorの画面でEndpoint Nameに任意の名前を入力してCreate Endpointボタンを押してください。下の画面はEndpoint Nameに「kkesendgridwebhook」と設定した結果です。
続いてSendGridにログインして、Event Webhookの設定画面にあるHTTP POST URLに、上記で発行されたURL(上図の枠内)を設定してください。
設定が完了したら、Test Your Integrationボタンを押して、テストイベントの受信を確認しましょう。成功すると受信結果が表示されて、次のようにリクエストの内容を確認できます。このように非常に簡単にEvent Webhookのデバッグができます。
モックAPIでWebhookの再送をみる
Event WebhookとParse Webhookはリクエスト先のサーバから正常応答(HTTPステータスコード 2xx)が返るのを待ちます。正常応答以外のステータスコードが返った場合は、リクエストを再送します。
BeeceptorのモックAPI機能を使うと、ステータスコードやレスポンスを変更できるため、Webhookによる再送を確認できます。さきほど受信したリクエストの右側にあるCreate Mockボタンを押してください。
モックAPIの呼び出し条件はHTTPリクエストのメソッドを「POST」にして、レスポンスはステータスコード503を返すようにします。
Event WebhookのPOSTを受信すると、Beeceptorはステータスコード503をSendGridへ返して、SendGrid側ではリクエストを再送します。下図のように、この様子はBeeceptorの画面で確認できます。
利用時の注意点
Beeceptorはアカウントの登録なしで利用できますが、その場合、作成したエンドポイントは誰でも自由にアクセスできるので、次のような点に注意しましょう。
- Endpoint Nameはなるべく複雑な名称にして他の人と重複しないようにする
- 同時接続している人がいないことを以下の数値で確認する
- 第三者に閲覧されたくない情報がリクエストに含まれる場合は有料プランを利用する
以上、Beeceptorの紹介でした。