私は Express が初めてで、X-Hub-Signature
ここで説明されているように a を処理するためのミドルウェアの実装を混乱させています: https://pubsubhubbub.googlecode.com/git/pubsubhubbub-core-0.4.html#authednotify
express.json()
リクエストを標準のミドルウェアに渡して実際に本文をデコードする前に、これを処理するミドルウェアを追加したいと思います。
var sigVerifier = function(req, res, next) {
var buf = '';
// Need to accumulate all the bytes... <--- HOW TO DO THIS?
// then calculate HMAC-SHA1 on the content.
var hmac = crypto.createHmac('sha1', app.get('client_secret'));
hmac.update(buf);
var providedSignature = req.headers['X-Hub-Signature'];
var calculatedSignature = 'sha1=' + hmac.digest(encoding='hex');
if (providedSignature != calculatedSignature) {
console.log(providedSignature);
console.log(calculatedSignature);
res.send("ERROR");
return;
}
next();
};
app.use(sigVerifier);
app.use(express.json());