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

Node.js调用stripe.customers.list接口后如何正确获取customer的id字段

问题原因

你调用的stripe.customers.list接口返回的是分页列表结构,所有符合查询条件的客户数据都存储在返回对象的data数组字段中,你之前直接读取customer.id会报错有两个原因:

  • 你定义的接收变量是customers(复数),你写的customer变量本身就不存在
  • 即使你变量名写对,customers本身是列表容器,不是单个客户对象,不存在id字段

你贴出的返回示例里object为subscription如果是实际返回结果,说明你实际调用的是订阅查询接口,取值逻辑和客户列表接口完全一致。


解决方法

情况1:确认查询条件仅对应1条结果

直接取数组第一个元素的id即可,注意要先判断数组非空避免索引越界报错:

const customers = await stripe.customers.list({
  email: 'email@email.com',
});

if (customers.data.length > 0) {
  const targetId = customers.data[0].id;
  console.log(targetId);
}

情况2:查询条件可能对应多条结果

遍历data数组批量获取所有匹配的ID:

const customers = await stripe.customers.list({
  email: 'email@email.com',
});

const idList = customers.data.map(item => item.id);
console.log(idList); // 输出所有匹配项的ID数组

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:39:01