【发布时间】:2015-10-24 20:30:16
【问题描述】:
我目前正在构建一个使用 Stripe 进行支付的节点应用程序。我已经设置了 webhook 并开始工作,因为我想在我的应用程序中创建订阅者,但需要来自 stripe webhook 的响应来存储我的 mongo db 中不同集合中不同事件接收到的数据。
我遇到的问题是 Stripe 发送的事件顺序并不总是相同,为了在文档/集合之间创建关系,我需要按以下顺序触发事件处理程序:
- customer.created
- customer.card.created(与客户相关)
- invoice.created(与客户相关)
就目前而言,2 的事件处理程序可以在 1 之前执行,3 在 2 之前执行,等等。
确保我的处理程序每次都以正确的顺序执行的最佳方法是什么?我在想某种承诺。如果是这种情况,node 有什么好的 promise 模块?
【问题讨论】:
-
节点有 Promise(),但 promise 存在于 ram 中,您可能不希望服务器重启以放弃等待操作。这就是 db 触发器之类的东西有用的地方。
标签: javascript node.js mongodb mongoose stripe-payments