2014-02-20 21 views

回答

1

只用wget就可以做到這一點。至少在版本1.13.4以及其他版本中。 --post-file選項允許您指定要發送的文件,只要postdata文件構建正確。

我也測試過這個二進制文件,它按預期工作。你不需要base64編碼文件,但你確實需要確保你的文件不包含邊界。

,使這項工作所需的最小命令是:

wget --header="Content-type: multipart/form-data boundary=FILEUPLOAD" --post-file postfile http://domain/uploadform 

和POSTDATA文件需要包含類似:

--FILEUPLOAD內容處置:表格數據; name =「comment」

我喜歡上傳文件!

--FILEUPLOAD Content-Disposition:form-data;命名=一個 「UploadFile」;文件名= 「myfile.bin」;內容類型:application/octet-stream媒體 類型:application/octet-stream

給我一些自動文件上傳操作!

--FILEUPLOAD--

一些細節很重要的位置:在後數據文件

線與\ r \ n終止。唯一的例外是文件上下文中的數據。 postdata中的每個BOUNDARY屬性都必須與對wget的調用中的BOUNDARY值匹配。 (示例中爲FILEUPLOAD) 所有邊界都以兩個連字符「 - 」作爲前綴,並以\​​ r \ n結尾 最後一個邊界後綴爲兩個額外的連字符「 - 」,並以\ r \ n結尾 數據,文件內容或參數值由空行「\ r \ n」包圍

相關問題