2008-09-19 82 views
0

我將原始HTTP請求傳遞給apache服務器(由PHP接收)。該請求的類型爲multipart/form-data,即提交HTML表單時使用的MIME類型相同。 但是,我不知道什麼HTTP頭用於設置表單字段名稱(我只是假設它是一個頭,定義這個,不知道它可能是什麼)然後可以在PHP中使用訪問$ _GET或$ _FILES中的字段。用於設置表單字段名稱(multipart/form-data)的HTTP頭

的HTTP請求可能是這個樣子:

Content-type: multipart/form-data;boundary=main_boundary 

--main_boundary 
Content-type: text/xml 
<?xml version='1.0'?> 
<content> 
Some content goes here 
</content> 

--main_boundary 
Content-type: multipart/mixed;boundary=sub_boundary 

    --sub_boundary 
    Content-type: application/octet-stream 

    File A contents 

    --sub_boundary 
    Content-type: application/octet-stream 

    File B contents 

    --sub_boundary 

--main_boundary-- 

回答

3

的Content-Disposition頭具有具有控制名稱的名稱參數。應該有一個後每個--sub_boundary

--sub_boundary 
Content-Disposition: form-data; name="mycontrol" 

我差點忘了:如果字段是一個文件控制,還有一個文件名字段和Content-Type頭

--sub_boundary 
Content-Disposition: form-data; name="mycontrol"; filename="file1.xml" 
Content-Type: application/xml; 

如果文件不是文字,你還需要

Content-Transfer-Encoding: binary 
+0

完美的解釋。乾杯! – sharkin 2008-09-19 13:19:49