我已经寻找这个问题的解决方案大约三周了。我看到其他人也遇到过这个问题,我已经尝试过为他们提供的解决方案,但它们似乎对我不起作用。我正在使用 Firebase 云函数,并通过云函数传递 Express 实例,如下所示
module.exports = onRequest(app);
这是我构建签名条纹事件的代码。我收到
Webhook signature verification failed
错误。代码:
app.post('/', express.raw({type: "*/*"}), (req, res) => {
const endpointSecret = "whsec_...";
let event;
const signature = req.headers['stripe-signature'];
try {
event = stripe.webhooks.constructEvent(
req.body,
signature,
endpointSecret
);
} catch (err) {
logger.error(`Webhook signature verification failed.`, err.message);
return res.sendStatus(400);
...
}
Firebase 是否会在将数据传递出去之前解析数据?我需要在那里配置什么吗?这简直要了我的命。
使用 bodyParser 将 rawbody 发送到 stripe webhook
app.use(bodyParser.raw({ type: 'application/json' }));
我目前正在实施 payemnt 网关。