Webhookを受け取るためのPHPページをセットアップする必要があります。過去にこれらの多くを行っていたので問題はありませんが、このプロジェクトで使用しているAPI私のwebhookはヘッダーで提供されている署名を検証する必要があります。PHP - 署名検証付きWebhook Receiverの設定
検証要求の一環として、それは次のように送信されます:
HEADER:
"x-xero-signature" : HASH_VALUE
PAYLOAD:
{
"events": [],
"lastEventSequence": 0,
"firstEventSequence": 0,
"entropy": "S0m3r4N0m3t3xt"
}
私はウェブフックキー(例えば「ABC123」)を作成しました、そしてこのウェブフックの検証要求の一部として、私は確認する必要がありますwebhookキーとbase64でエンコードされたHMACSHA256を使ってハッシュされたペイロードはヘッダーのシグネチャと一致する必要があります。これは正しく署名されたペイロードです。シグネチャがハッシュされたペイロードと一致しない場合は、署名されたペイロードが正しくありません。
検証を受け取る意図を得るには、受信URLが正しく署名されたすべてのペイロードに対して200 Okと応答し、ステータスが401であると応答しなければなりません。401不正確に署名されたすべてのペイロードに対して承認されていません。
私はこれについて移動する方法として、この時点で失われたビットだ - このセットアップの詳細はここで見つけることができます:
https://developer.xero.com/documentation/getting-started/webhooks
:対応するハッシュを生成したり、リクエストヘッダから値を取得しますか? – jeroen
@jeroenこの時点で - 要求ヘッダーから値を取得し、対応するハッシュを生成する – user982124