githubから受信Webhookを処理していて、x-hub-signatureを確認したいと思います。私はhmac
を使って「秘密」をハッシュし、2つのハッシュを比較します。問題は、決して一致しないことです。これは私のセットアップです:HMAC署名がgithubのx-hub-signatureと一致しません
router.route("/auth")
.post((req, res) => {
var hmac = crypto.createHmac("sha1", process.env.WEBHOOK_SECRET);
var calculatedSignature = "sha1=" + hmac.update(JSON.stringify(req.body)).digest("hex");
console.log(req.headers["x-hub-signature"] === calculatedSignature); // Returns false
console.log(req.headers["x-hub-signature"]) // => sha1=blablabla
console.log(calculatedSignature) // => sha1=foofoofoo
res.end();
});
私はすべてを試しましたが、動作させることはできません。 hmac.update()
にJSON.stringify(req.body)
以外のパラメータを保持する必要があるかどうかを知りたいなぜ彼らは一致しないのか誰にも分かりますか?