You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AWS Amplify函数获取Stripe的price价格数据?

Stripe与AWS Amplify集成后retrieve方法报错解决方案

你遇到的Cannot read property 'retrieve' of undefined错误本质是stripe.prices对象在Amplify运行环境中未被正确初始化,结合create类方法可正常运行、纯Node环境测试通过的前提,按以下优先级排查解决:

  • 确认Stripe调用位置:所有带密钥的Stripe服务端接口必须在Amplify后端Lambda函数中调用,禁止在前端代码中引入服务端版Stripe Node SDK。Stripe前端客户端SDK仅支持支付相关的前端能力,默认不包含prices、customers等资源的读写方法,直接调用会出现模块undefined报错。
    注意:请勿将Stripe密钥硬编码在前端或后端代码中,统一存入Amplify环境变量管理
  • 核对后端函数SDK版本:确保Amplify后端函数package.json中声明的stripe依赖版本与你本地测试的Node项目版本一致,推荐升级至v10+稳定版,在后端函数根目录执行npm install stripe@latest --save重装依赖后重新部署Amplify后端。
  • 检查Stripe初始化配置:不要指定过旧的apiVersion参数,使用Stripe默认绑定的API版本即可,正确初始化示例如下:
const Stripe = require('stripe');
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);
  • 排查Lambda权限限制:如果你为Lambda配置了Stripe资源访问权限策略,确保已放开GET类请求权限。retrieve类方法对应Stripe API的GET请求,create类方法对应POST请求,仅开放POST权限会导致读操作相关模块无法正常挂载。
  • 功能验证:修改完成后先在Amplify Lambda测试控制台直接调用stripe.prices.retrieve方法,确认返回正常后再对接前端逻辑。

内容的提问来源于stack exchange,提问作者Parth Shah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 00:45:03