我正在尝试将Plaid事务webhooks集成到api中,似乎无法解决任何webhooks问题。我使用了格子快速入门代码并添加了webhook参数:
Plaid.create({
apiVersion: "v2",
clientName: "Plaid Walkthrough Demo",
env: "<%= PLAID_ENV %>",
product: ["transactions", "auth"],
webhook: "http://localhost:3000/api/plaid/webhook",
key: "<%= PLAID_PUBLIC_KEY %>",//...
在接收端我只是记录req.body以查看是否已触发webhook:
app.post("/api/plaid/webhook", (req, res) => {
console.log("WEBHOOK FIRED");
console.log(JSON.stringify(req.body));
});
当我在Postman中测试路线时,req.body按预期记录,但是在创建新的PLAID项目时,它无法正常工作。我目前正在使用沙盒模式
写给Plaid支持并且它不起作用的原因是因为localhost:3000不是有效的URL。有一次我在实际的服务器上尝试它,它工作。
正如您已经发现的那样,localhost:3000将不起作用,因为它不公开(Plaid可见)。
当我想在本地测试webhook时,我通常会使用以下用户服务: