【发布时间】:2014-05-15 00:41:34
【问题描述】:
我创建了 Coldfusion 文件来捕获 STRIPE webhook 响应。
<cfsavecontent variable="headerdump">
<cfdump var="#toString(getHttpRequestData().content, 'utf-8')#" expand="yes" format="text">
</cfsavecontent>
当我打印 headerdump 时,得到以下响应。我想提取输出文本的节点值。
<pre>{
"id": "evt_1041EO45YXiN2y2zPhZbNrgh",
"created": 1399872268,
"livemode": false,
"type": "invoice.payment_succeeded",
"data": {
"object": {
"date": 1399872268,
"id": "in_1041EO45YXiN2y2zQF1xhLyl",
"period_start": 1399872268,
"period_end": 1399872268,
"lines": {
"object": "list",
"total_count": 1,
"has_more": false,
"url": "/v1/invoices/in_1041EO45YXiN2y2zQF1xhLyl/lines",
"data": [
{
"id": "sub_41EOmzNFelCyAL",
"object": "line_item",
"type": "subscription",
"livemode": false,
"amount": 0,
"currency": "usd",
"proration": false,
"period": {
"start": 1399872268,
"end": 1399958668
},
"quantity": 1,
"plan": {
"interval": "month",
"name": "test one day",
"created": 1399536505,
"amount": 500,
"currency": "usd",
"id": "test_001",
"object": "plan",
"livemode": false,
"interval_count": 1,
"trial_period_days": 1,
"metadata": {
},
"statement_description": "half day trial"
},
"description": null,
"metadata": null
}
]
},
"subtotal": 0,
"total": 0,
"customer": "cus_41EOvhzjYGx7ci",
"object": "invoice",
"attempted": true,
"closed": true,
"paid": true,
"livemode": false,
"attempt_count": 0,
"amount_due": 0,
"currency": "usd",
"starting_balance": 0,
"ending_balance": null,
"next_payment_attempt": null,
"charge": null,
"discount": null,
"application_fee": null,
"subscription": "sub_41EOmzNFelCyAL",
"metadata": {
},
"description": null
}
},
"object": "event",
"pending_webhooks": 1,
"request": "iar_41EO1vDF1gpnPn"
}</pre>
请建议如何在 Coldfusion 或 javascript 中阅读此内容。
谢谢
【问题讨论】:
-
@Peter:我已经尝试过,但出现错误“字符 1 处的 JSON 解析失败:' 标记,但下一个字符再次出现相同的错误。
-
向我们展示您用来尝试从字符串中提取 JSON 的代码
-
不要使用
<cfdump>来生成内容。它很可能会将不需要的内容添加到您的变量中。只需在<cfsavecontent>标签中使用#toString(getHttpRequestData().content, 'utf-8')#,看看效果是否更好。 -
除了 Miguel 强调的 cfdump 问题(这里不需要 cfdump 和 cfsavecontent),这个问题与链接的问题基本相同(如果有任何显着差异,请使用合适的编辑问题详细信息,可以重新打开)。
标签: javascript jquery json coldfusion stripe-payments