我試圖從iPhone上傳文件到服務器。我試圖避免使用任何不是由蘋果製作的庫,並且從我可以告訴它看起來我需要在構建我的請求時變得相當低級別。有人能告訴我多部分/形式 - 數據請求中的「邊界」是什麼以及如何正確使用它?邊界如何在多部分帖子請求中工作?
1
A
回答
6
邊界是客戶用於分隔所發佈表單字段的任意一段文本。客戶端聲明它正在使用的邊界作爲Content-type
標題的一部分。
From the IETF Form-based File Upload in HTML RFC:
的邊界被選擇的是不以任何的數據的發生。 (此 選擇有時以概率方式完成。)形式爲 的每個字段按其出現在表單中的順序發送,作爲多部分流的一部分 。每個部分標識 原始HTML表單中的INPUT名稱。如果媒體類型是已知的(例如,從文件 擴展或操作系統鍵入信息推斷出)或作爲 application/octet-stream,則每個部分應該標記有合適的 內容類型。
...
6.例子
假設服務器提供了以下HTML:
<FORM ACTION="http://server.dom/cgi/handle" ENCTYPE="multipart/form-data" METHOD=POST> What is your name? <INPUT TYPE=TEXT NAME=submitter> What files are you sending? <INPUT TYPE=FILE NAME=pics> </FORM>
,並在用戶鍵入 「喬吹」 的名稱字段,並選擇文本 文件「file1.txt」爲「您要發送什麼文件?」的答案
客戶端可能會發送回以下數據:如果用戶也表示了答案 圖像文件「file2.gif」到「什麼文件你發送」
Content-type: multipart/form-data, boundary=AaB03x --AaB03x content-disposition: form-data; name="field1" Joe Blow --AaB03x content-disposition: form-data; name="pics"; filename="file1.txt" Content-Type: text/plain ... contents of file1.txt ... --AaB03x--
,客戶端可能客戶端可能會發送回 以下數據:
Content-type: multipart/form-data, boundary=AaB03x --AaB03x content-disposition: form-data; name="field1" Joe Blow --AaB03x content-disposition: form-data; name="pics" Content-type: multipart/mixed, boundary=BbC04y --BbC04y Content-disposition: attachment; filename="file1.txt"
在第一個例子中,邊界是固定字符串AaB03x
。在第二個示例中,邊界是第一個AaB03x
,然後切換到BbC04y
。
+0
好多了,謝謝。將-1轉換爲upvote。 – 2014-06-22 06:16:36
相關問題
- 1. 如何使用TRestRequest設置多部分請求的邊界?
- 2. 如何在Python中覆蓋請求的隨機生成的多部分邊界?
- 3. HTTP多部分(POST)請求中的邊界參數是什麼?
- 4. 多部分數據POST使用python請求:沒有發現多部分邊界
- 5. 由於沒有找到多部分邊界,請求被拒絕
- 6. python請求帖子不工作
- 7. 如何轉義多部分HTTP邊界
- 8. PHP Guzzle。如何將自定義邊界設置爲多部分POST請求?
- 9. 由servlet處理的多部分圖片上傳帖子請求
- 10. 該請求被拒絕,因爲沒有在springboot中找到多部分邊界
- 11. 如何在Meteor的多個帖子請求中保留Cookie?
- 12. 多部分請求
- 13. 如何在另一個邊界上製作部分有邊界的圓?
- 14. 在TD分配邊界不工作
- 15. SPRING REST:請求被拒絕,因爲沒有找到多部分邊界
- 16. org.apache.commons.fileupload.FileUploadException:請求被拒絕,因爲沒有找到多部分邊界
- 17. 處理多個帖子請求的Servlet
- 18. 如何在帖子邊界內的tumblr文字帖中保留照片?
- 19. 如何上傳文件作爲Paw中多部分請求的一部分?
- 20. Django原子請求如何工作?
- 21. 如何在多部分請求中隱藏Firebase中的值iOS
- 22. Android多部分http請求
- 23. 多部分Http請求
- 24. AFNetworking 3.0多部分請求
- 25. Xcode多部分請求
- 26. 處理不是動作請求的多部分請求?
- 27. POST多部分數據處理邊界
- 28. http多部分響應和邊界
- 29. 使用請求帖子而不是請求在Python中獲取
- 30. AFNetworking取消帖子請求
你在編寫iPhone代碼或服務器代碼嗎? – 2010-10-26 19:26:00
兩者,但我問的是在客戶端(iphone)構造請求。 – tybro0103 2010-10-26 19:26:43