从curl请求中将响应主体保存到文件

时间:2013-10-23 09:37:32

标签: http curl command-line

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

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命令将如何显示。

由于

2 个答案:

答案 0 :(得分:13)

来自curl docs:

-i, - include

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

所以删除-i param

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

答案 1 :(得分:13)

您只需将输出附加到文件

即可
curl ... >> output-file.html