curl --data "<xml>" --header "Content-Type: text/xml" --request PROPFIND url.com
通过阅读curl手册页,我无法理解上述命令行如何使用--data
选项。
问题:
答案 0 :(得分:1)
--data
标志用于定义POST
数据。
该命令发送内容为POST
且MIME类型为<xml>
的{{1}}。但是,使用标记text/xml
,您将HTTP方法从--request
设置为POST
并将请求发送到PROPFIND
。
我也设法在手册中找到url.com
标志:
--data
(HTTP)将POST请求中的指定数据发送到HTTP服务器, 与用户填写HTML时浏览器的操作方式相同 表单并按下提交按钮。这将导致卷曲通过 使用content-type将数据发送到服务器 应用程序/ x-WWW窗体-urlencoded。比较-F, - form。
-d, - data与--data-ascii相同。要纯数据二进制发布数据,您应该使用--data-binary选项。对URL进行URL编码 您可以使用的表单字段的值--data-urlencode。
如果在同一命令中多次使用这些选项中的任何一个 在行中,指定的数据将与a合并在一起 分离&amp; -symbol。因此,使用'-d name = daniel -d skill = lousy'会 生成一个看起来像'name = daniel&amp; skill = lousy'的帖子块。
如果用字母@开始数据,其余的应该是一个文件 用于读取数据的名称,或者 - 如果您希望curl读取数据 来自stdin。该文件的内容必须已经过URL编码。 也可以指定多个文件。从名为的文件中发布数据 因此,'foobar'将使用--data @filename完成。当--data被告知 从这样的文件读取,回车和换行将是 剥离了。