表題の通りです。
環境
- PHP 7.2.1
- Laravel 5.8
コード
最小のソースコードを示しますので、ご自分の環境にあった形に修正を行ってください。
<?php public function hoge(Request $request) { $params = explode(",", $_SERVER['HTTP_STRIPE_SIGNATURE']); $t = explode("=", $params[0])[1]; // タイムスタンプ $v1 = explode("=", $params[1])[1];// シグネチャ $content = $request->getContent();// HookBody $hookKey = "whsec~~~";//StripeのWebhookのページにある署名キー $hash = hash_hmac("sha256", $t.".".$content, $hookKey); if ($hash == $v1) { // 正常なWebHook } else { // 不正なWebHook } }
以上です。