20

我对一个知道为特定发布请求返回文件的 webapi 使用 curl (在浏览器中运行它会触发浏览器弹出一个“保存文件”对话框)。我的意图是将响应字节写入文件。我使用以下命令

curl -k -i -u username:password -X POST -H "Content-Type:application/json" -d @c:\\curl\\request_body_file.json -o config.cfg https://127.0.0.1:8000/myapi/trigger/export

然而,这也会导致响应头被写入输出文件,这不是我想要的。我只需要保存响应内容。

这是输出文件的样子:

TTP/1.1 200 OK
Content-Length: 12042
Content-Type: application/octet-stream; charset=UTF-8
Content-Disposition: attachment; filename=my_export
Date: Wed, 23 Oct 2013 09:30:47 GMT
Accept-Ranges: bytes
Server: Restlet-Framework/2.1.2
X-Auth-Token: Token ODVhMzk3OWY1NjcwMjg2ZGM0MDhmNTEzYTYwZmE4M2JhNTM1YmE0Yw==

xÚíÝÛãX~ØqÍÎŽçvfvervrevtrbyewd3334444 ................................ 

curl 命令将如何实现我之前描述的内容。

谢谢

4

2 回答 2

19

您可以简单地将输出附加到文件

curl ... >> output-file.html
于 2015-02-12T09:30:41.437 回答
17

来自 curl 文档:

-i,--包括

(HTTP) 在输出中包含 HTTP 标头。HTTP 标头包括服务器名称、文档日期、HTTP 版本等内容...

所以删除 -i 参数

http://curl.haxx.se/docs/manpage.html

于 2013-10-23T09:46:31.950 回答