【发布时间】:2022-01-01 19:07:06
【问题描述】:
你好,
我正在开发一个使用 Stripe 进行支付的项目,这个项目使用的框架是 SvelteKit,为了方便我也使用 TS。
我实现了 Stripe 支付,在本地进行了测试,一切正常,然后我将项目部署到 Firebase 云功能,然后出现了第一个错误。每次调用时创建支付意图的端点都会失败(但仅在 FB 云功能中,它从未在本地失败)。
所以我决定(不仅仅是因为这个错误)将生成支付意图的函数移动到我的 __layout.svelte 之一,在那里它可以从前端调用并在后端执行,而无需发出 HTTP 请求到暴露于整个互联网的端点。
条带配置:
import Stripe from "stripe";
console.log('secret defined:', import.meta.env.VITE_STRIPE_SECRET_KEY);
const stripe = new Stripe(import.meta.env.VITE_STRIPE_SECRET_KEY, {
apiVersion: '2020-08-27',
});
console.log('after stripe conf');
export default stripe;
我将该函数移至所需的 __layout.svelte 并收到错误 EventEmitter is not a constructor。
然后我找到了this 的问题,并按照答案的建议做了。然后我得到了不同的错误:
http.Agent is not a constructor.
【问题讨论】:
标签: stripe-payments svelte vite sveltekit