1:form-data
此時對應的Content-Type:multipart/form-data;
複製程式碼
<form action="${pageContext.request.contextPath}/imageUpload_saveOrUpdate.action" method="post" enctype="multipart/form-data">
<div>
<label>請選擇上傳圖片地址:</label>
<input type="file" name="image"/>
</div>
</div>
<div>
<input type="submit" value="上傳"/>
</div>
</form>
複製程式碼
它會將表單的資料處理為一條訊息,以標籤為單元,用分隔符分開。既可以上傳鍵值對,也可以上傳檔案。當上傳的欄位是檔案時,會有content-type來說明檔案型別;content-disposition,用來說明欄位的一些資訊;由於有boundary隔離,所以multipart/form-data既可以上傳檔案,也可以上傳鍵值對,它採用了鍵值對的方式,所以可以上傳多個檔案。
2:x-www-form-urlencoded
就是application/x-www-from-urlencoded,會將表單內的資料轉換為鍵值對,比如,name=Java&age = 233:raw 可以上傳任意格式的文字,可以上傳text、json、xml、html等
4:binary 相當於Content-Type:application/octet-stream,從字面意思得知,只可以上傳二進位制資料,通常用來上傳檔案,由於沒有鍵值,所以,一次只能上傳一個檔案。
multipart/form-data與x-www-form-urlencoded區別
multipart/form-data:既可以上傳檔案等二進位制資料,也可以上傳表單鍵值對,只是最後會轉化為一條資訊;
x-www-form-urlencoded:只能上傳鍵值對,並且鍵值對都是間隔分開的。
複製程式碼
參考[]