2013-04-09 102 views
110

我正在使用cURL命令行實用程序將HTTP POST發送到Web服務。我想包含一個文件的內容作爲POST的主體實體。我曾嘗試使用-d </path/to/filename>以及其他類型信息的變體,如--data </path/to/filename> --data-urlencode </path/to/filename>等...該文件始終附加。我需要它作爲身體實體。如何使用cURL將文件內容作爲主體實體發送

回答

187

我相信你正在尋找的@filename語法,例如:

curl --data "@/path/to/filename" http://... 

=====

捲曲將去掉文件中的所有換行符。如果您想用完整的換行符發送文件,請使用--data-binary來代替--data

+13

如果您想成爲真正的幻想,您可以這樣做:'cat file.txt | curl --data「@ - 」\'( Breedly 2015-04-29 21:44:55

+53

curl將從文件中去除所有換行符。如果你想發送帶有換行符的文件,可以使用'--data-binary'來代替'--data'。 – Chris 2015-05-14 23:27:29

+0

現在如何添加登錄憑據來授權此請求? – anon58192932 2017-07-20 21:14:18

相關問題