首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Plaid钩子未触发

Plaid钩子未触发
EN

Stack Overflow用户
提问于 2018-08-29 02:22:35
回答 3查看 1.5K关注 0票数 3

我正在尝试将Plaid webhooks集成到一个api中,但似乎在启动任何webhooks时遇到了问题。我使用了plaid快速入门代码,并添加了webhook参数:

代码语言:javascript
复制
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:

代码语言:javascript
复制
  app.post("/api/plaid/webhook", (req, res) => {
  console.log("WEBHOOK FIRED");
  console.log(JSON.stringify(req.body));
});

当我在Postman中测试该路由时,req.body按照预期进行了记录,但是当创建一个新的格子项目时,它并不工作。我目前在沙盒模式下工作

EN

回答 3

Stack Overflow用户

发布于 2018-09-07 03:35:45

写给Plaid,它不工作的原因是因为localhost:3000不是一个有效的URL。一旦我在一个实际的服务器上尝试过它,它就能工作了。

票数 1
EN

Stack Overflow用户

发布于 2019-03-09 07:10:17

正如您已经发现的那样,localhost:3000不会工作,因为它不是公共的(对Plaid可见)。

当我想在本地测试webhooks时,我通常会使用如下服务:

https://postb.in

https://webhook.site

票数 1
EN

Stack Overflow用户

发布于 2020-07-14 15:19:15

就像提到的Plaid支持一样,localhost:8000不是一个公共URL,所以Plaid看不到它。

但是,使用expose.sh很容易给本地主机提供一个公共URL。然后,您可以在本地测试webhook。

安装expose.sh

对于Mac或Linux,请转到Expose.sh并将显示的安装代码复制/粘贴到终端中。

对于Windows,请转到Expose.sh,下载二进制文件并将其放入路径中的某个位置。

将您的api公开给web

启动API服务器。然后运行expose <port>,其中port是运行您的API服务器的端口,如80或8080。

Expose.sh将生成一个随机的公共expose.sh地址。您将看到如下输出

代码语言:javascript
复制
https://s3rh.expose.sh is forwarding to localhost:80
http://s3rh.expose.sh is forwarding to localhost:80

然后,您可以让Plaid使用公共HTTPS URL,该URL将转发给localhost。

我已经写了一个完整的指南here

免责声明:我构建了expose.sh

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52064149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档