我需要通过使用PUT请求窗口下的curl.exe发布XML数据。
在卷发帮助中我发现:
-d / – data <data> HTTP POST数据(H)
我应该提供什么<data>?
卷曲示例调用
# with inlining plain data curl -X PUT -d "payload" http://localhost # referrring file curl -X PUT -d @myXmlFile.xml http://localhost
如果你的窗口卷曲端口不支持它去cygwin 。 这是一个类似于linux的环境,也提供了“合适”的卷曲。
在Windows中,如果双引号参数本身包含双引号字符,则双引号必须加倍。
例如,输入“This is”引用的“有效载荷”为“This is”“quoted”“payload”,这与Unix中的有很大不同。
例:
curl -X PUT -d "This is ""quoted"" payload" http://localhost
在Windows中,您需要将@发送到您要发送的文件的引号中:
curl -XPUT --data-binary "@uploadme.txt"
否则你会得到奇怪的错误,因为它试图使用该文件的内容作为网址:
curl: (6) Couldn't resolve host 'upload' curl: (6) Couldn't resolve host 'me!'
(uploadme.txt包含“上传我!”)