【发布时间】:2022-01-24 15:13:18
【问题描述】:
我正在使用 Stripe CLI 来触发本地 webhook 事件。该命令允许我使用以下选项/语法设置元数据:
--add resource:path1.path2=value
我尝试创建的元数据结构如下所示:
{
id: 1,
artistId: 2,
image: {
url: `https://somepath`
}
}
这是我的命令:
$ stripe trigger payment_intent.succeeded --add payment_intent:metadata.id=1 --add payment_intent:metadata.artistId=1 --add payment_intent:metadata.image.url=https://www.arweave.net/ij5O6dDlzxOuWHUnikZapq10kkeEVe_elLWvpfE6ado?ext=PNG
⣟ Checking for new versions... Setting up fixture for: payment_intent
Running fixture for: payment_intent
Trigger failed: Request failed, status=400, body={
"error": {
"message": "Invalid value type: {:url=\u003E\"https://www.arweave.net/ij5O6dDlzxOuWHUnikZapq10kkeEVe_elLWvpfE6ado?ext=PNG\"} must be a string",
"param": "metadata",
"type": "invalid_request_error"
}
}
起初,我认为 URL 中的 . 破坏了语法。但是当我将 URL 替换为 foo 时,我得到了同样的错误。
我认为我必须在路径语法上做错事。或者数据结构的深度是否存在最大限制?
更新:
为了回避这个问题,我尝试使用fixtures json file 实现相同的目的,但没有成功。我得到了同样的错误,即使语法是 JSON 并且是明确的。我联系了 Stripe 支持,他们似乎也对这种行为感到困惑。我正在等待他们的升级团队的回复。
【问题讨论】:
标签: command-line stripe-payments command-line-arguments