【发布时间】:2020-07-18 01:05:56
【问题描述】:
我正在尝试使用 Stripe 创建在线支付服务,并且我想使用 Express 和 Node.js 创建一个 API 端点,以便我的前端服务器可以调用此 API,然后在后端为我处理费用。以下 sn-p 是我所拥有的 POST API:
const express = require('express');
const router = express.Router();
const stripe = require('stripe')('sk_test_mystripescretkey');
router.post('/token', (req, res) => {
stripe.tokens.create({
card: req,
}).then(token => res.send(token))
.catch(err => res.status(400).send(err.message));
});
module.exports = router;
但是,当我尝试通过使用 Postman 调用此端点来测试它时,我收到了 Maximum call stack size exceeded 错误。条带函数本身工作正常,所以我认为错误来自尝试在 API 端点内调用条带函数?有人可以让我知道为什么会发生此错误并建议修复吗?谢谢。
【问题讨论】:
-
您的代码可能在某处递归,并且您在浏览器中遇到堆栈溢出。没有双关语。
-
@L0uis 我认为它可能是堆栈溢出,但我不知道递归可能在哪里。 stripe 函数本身当然不是递归的,我只是从 Postman 调用端点。
标签: node.js api express stripe-payments