6

我正在使用允许我通过 cURL 请求发布内容的 Web 界面。

示例帖子如下所示:

<status>A note</status>

但是每当我尝试发送这个时,它似乎不接受 XML

curl http://website.com/update -d '<?xml version="1.0" encoding="UTF-8"?><status>test</status>' -H 'Accept: application/xml' \ -H 'Content-Type: application/xml'  -u username:password

我可以做任何其他类型的请求,只是发送这个 XML 似乎不起作用,我在这里做错了吗?

4

1 回答 1

7

curl要使用您必须使用 POST 方法并添加参数来发送数据(xml、json、文本等)--data-urlencode,如下所示:

curl -X POST http://website.com/update \
  --data-urlencode xml="<status>A note</status>" \
  -H 'Accept: application/xml' \
  -H 'Content-Type: application/xml' \
  -u username:password

或者

curl -X POST http://website.com/update \
  --data-urlencode "<status>A note</status>" \
  -H 'Accept: application/xml' \
  -H 'Content-Type: application/xml' \
  -u username:password

如果您想通过 GET 发送,我认为您必须在调用curl命令之前对字符串进行编码

于 2012-05-17T16:13:46.347 回答