You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

Stripe测试API密钥是否存在功能限制?电商产品接口调用咨询

Stripe测试密钥调用/v1/products返回空数组的原因及解决办法

我之前也碰到过一模一样的问题,先给你吃个定心丸:Stripe的测试密钥并没有功能限制,它能完整复刻正式环境的所有API能力,问题其实出在测试环境和正式环境是完全独立的两个数据空间!

具体来说:

  • 测试环境和正式环境的数据完全隔离:你在正式环境创建的产品、客户、订单等数据,不会同步到测试环境里。所以当你用测试密钥调用/v1/products时,测试环境里本来就没有任何产品,自然返回空数组。
  • 要获取测试环境的产品数据,你需要先在测试环境里创建产品:
    1. 最简单的方式是登录Stripe Dashboard,切换到左上角的「Test mode」(测试模式),然后手动添加测试产品;
    2. 也可以用测试密钥通过API创建,比如用Stripe npm包的代码示例:
      const stripe = require('stripe')('你的测试密钥(sk_test_开头)');
      
      async function createTestProduct() {
        const product = await stripe.products.create({
          name: '测试T恤',
          description: '用于电商测试的商品',
          default_price_data: {
            unit_amount: 2000,
            currency: 'usd',
          },
        });
        console.log('创建的测试产品:', product);
      }
      
      createTestProduct();
      
  • 验证步骤:创建完测试产品后,再用测试密钥发送GET请求到/v1/products,就能看到包含测试产品的数组了。

另外要注意确认你调用接口时使用的确实是测试密钥(格式为sk_test_xxxx),别不小心把正式密钥和测试密钥搞混了哦。

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

火山引擎 最新活动