1. 程式人生 >實用技巧 >其它 >Content-Type為“multipart/form-data“是什麼意思?

Content-Type為“multipart/form-data“是什麼意思?


1.先解釋一個名詞
enctype就是encodetype:就是編碼型別的意思。

2.當enctype為multipart/form-data是指表單資料有多部分構成,既有文字資料,又有檔案等二進位制資料的意思**(一般提交檔案需將Content-Type使用此型別,具體可以看後端同事給的介面文件)。**

預設情況下,enctype的值是application/x-www-form-urlencoded,不能用於檔案上傳,只有使用了multipart/form-data,才能完整的傳遞檔案資料。

application/x-www-form-urlencoded不是不能上傳檔案,是隻能上傳文字格式的檔案,multipart/form-data是將檔案以二進位制的形式上傳,這樣可以實現多種型別的檔案上傳。

一、關於HTML 標籤的 enctype 屬性

application/x-www-form-urlencoded:在傳送前編碼所有字元(預設)

multipart/form-data: 不對字元編碼,或在使用包含檔案上傳控制元件的表單時,必須使用該值。

text/plain:空格轉換為 “+” 加號,但不對特殊字元編碼。

例如

<form action="form_action.asp" enctype="text/plain">
		<p>Firstname:<input type="text" name="fname" / ></p>
		<p>Lastname:<input type="text" name="lname" /></p>
		<input type="submit" value="Submit" />
	</form>

二、enctype:規定了form表單在傳送到伺服器時候編碼方式,有如下的三個值。

1、application/x-www-form-urlencoded。預設的編碼方式。但是在用文字的傳輸和MP3等大型檔案的時候,使用這種編碼就顯得 效率低下。

2、multipart/form-data 。 指定傳輸資料為二進位制型別,比如圖片、mp3、檔案。

3、text/plain。純文體的傳輸。空格轉換為 “+” 加號,但不對特殊字元編碼。