【发布时间】:2015-08-03 11:51:44
【问题描述】:
我在 ColdFusion 脚本中执行以下操作:
svc = new http();
svc.setMethod('post');
svc.setCharset('utf-8');
svc.setUrl('https://api.stripe.com/v1/charges');
svc.addParam(type='header', name='Authorization', value='Bearer #Stripe.mySecretKey#');
svc.addParam(type='formfield', name='amount', value=form.amount);
svc.addParam(type='formfield', name='currency', value='usd');
svc.addParam(type='formfield', name='card', value='#form.card#');
svc.addParam(type='formfield', name='description', value='#form.email#');
prefix = svc.send().getPrefix();
response = prefix.FileContent;
WriteOutput(response & '<br>');
WriteOutput(IsSimpleValue(response) & '<br>');
WriteOutput(IsJSON(response));
dump(response);
我得到一个如下所示的字符串:
{ “id”:“ch_6HAwRK92OsQPoA”,“object”:“charge”,“created”:1432149035,“livemode”:false,“paid”:true,“status”:“paid”,“amount”: 100,“货币”:“美元”,“退款”:假,“来源”:{“id”:“card_6HAwNGtbdzFdq0”,“对象”:“卡”,“last4”:“4242”,“品牌”:“ Visa”、“funding”:“credit”、“exp_month”:12、“exp_year”:2015、“fingerprint”:“I2nSF7gS79j9Zhei”、“country”:“US”、“name”:null、“address_line1”:null ,“address_line2”:空,“address_city”:空,“address_state”:空,“address_zip”:空,“address_country”:空,“cvc_check”:“通过”,“address_line1_check”:空,“address_zip_check”:空, "dynamic_last4": null, "metadata": {}, "customer": null }, "captured": true, "card": { "id": "card_6HAwNGtbdzFdq0", "object": "card", "last4 ": "4242", "brand": "Visa", "funding": "credit", "exp_month": 12, "exp_year": 2015, "fingerprint": "I2nSF7gS79j9Zhei", "country": "US", “名称”:null,“address_line1”:null,“address_line2”:null,“address_city”:null,“address_state”:null,“address_zi” p”:null,“address_country”:null,“cvc_check”:“pass”,“address_line1_check”:null,“address_zip_check”:null,“dynamic_last4”:null,“元数据”:{},“customer”:null } ,“balance_transaction”:“txn_6HAw4bAUUZ6trA”,“failure_message”:null,“failure_code”:null,“amount_refunded”:0,“customer”:null,“invoice”:null,“description”:“PhillipSenn@gmail.com” , "dispute": null, "metadata": {}, "statement_descriptor": null, "fraud_details": {}, "receipt_email": null, "receipt_number": null, "shipping": null, "destination": null , "application_fee": null, "refunds": { "object": "list", "total_count": 0, "has_more": false, "url": "/v1/charges/ch_6HAwRK92OsQPoA/refunds", "data" : [] } }
以及“是”和“是”。
如果我执行 DeserializeJSON(response),则会收到 500 错误。
那么,如何将这个看起来像 json 的简单值字符串放入 ColdFusion 结构中,以便引用 response.id 和 response.paid?
【问题讨论】:
标签: coldfusion stripe-payments