подпись, которую я должен проверить. При проверке, я получаю такую же подпись, за исключением некоторых символов, например там где у меня "+", у Facebook стоит "-":
n6HLQ007z2jQuErYfCbeRvw_sSfzK-b2o-RWrhjyyus - пришел от FB.
n6HLQ007z2jQuErYfCbeRvw/sSfzK+b2o+RWrhjyyus= - получился у меня.
Делаю подпись так:
const crypto = require('crypto');
const hmac = crypto.createHmac('sha256', 'appSecret');
hmac.update(payload);
const expectedSig = hmac.digest('base64');
Попробуй hex
Не понимаю, в чем проблема заменяй символы и проверяй
replace('-', '+').replace('_', '/') же, не? ну и + '=' по окончании.
просто другая версия base64
Обсуждают сегодня