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

为什么调用stripe.Charge.list传入starting_after会报Invalid String错误?

问题原因

stripe.Charge.list(limit=1) 返回的是Stripe封装的分页列表对象,而starting_after参数要求传入的是上一页最后一条资源的ID字符串,你直接将整个列表对象传入,会触发参数类型校验失败,就会报Invalid string错误。

修复方案

你需要先从返回的列表对象的data字段中取出单条Charge记录,再取该记录的id属性传入参数即可,修复后的代码如下:

newer_charge_list = stripe.Charge.list(limit=1)

# 先判断返回列表非空,避免索引报错
if newer_charge_list.data:
    # 取出列表中的第一条Charge对象
    latest_charge = newer_charge_list.data[0]
    # 传入Charge的ID作为分页游标
    older_charge = stripe.Charge.list(limit=1, starting_after=latest_charge.id)

补充说明

  • Stripe所有批量查询类接口的返回结构统一,实际资源都存储在返回对象的data数组中,不要直接对外层返回的列表对象做业务操作
  • 分页参数starting_after、ending_before均只接受对应资源的ID字符串,不支持直接传入资源对象或列表对象

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 15:48:02