如何在 cURL post 请求中发送简单对象

How to send simple object in cURL post request

我需要将一个简单的对象 {foo:"bar"} 附加到 x-www-form-urlencoded cURL post 请求。请注意下面示例中的元数据标记:如何对这样的对象进行编码?我意识到它不是文字 JSON,就像我在下面的请求示例中那样。

curl https://api.stripe.com/v1/transfers \ -u **********************: \ -d currency=usd \ -d description='This is a test' \ -d destination=************* \ -d metadata='{foo:"bar"}' \ -d amount=200

我也试过 %7B'foo'%3A'bar'%7Dfoo=bar

Stripe API 响应总是: { "error": { "type": "invalid_request_error", "message": "Invalid metadata: metadata must be a set of key-value pairs", "param": "metadata" } }

对于嵌套元数据有问题的任何人,答案如下...

curl https://api.stripe.com/v1/transfers \ -u ************: \ -d currency=usd \ -d description='This is a test' \ -d destination=********* \ -d metadata[foo]=bar \ -d amount=200

试试这个

-d metadata='{"foto":"bar"}'