form編碼方式application/x-www-form-urlencoded和multipart/form-data的區別


form元素有個enctype屬性,可以指定數據編碼方式,有如下三種:

1. application/x-www-form-urlencoded: 表單數據編碼為鍵值對,&分隔

2. multipart/form-data: 表單數據編碼為一條消息,每個控件對應消息的一部分

3. text/plain: 表單數據以純文本形式進行編碼

詳細說明:

form的enctype的編碼方式,常用有兩種:

application/x-www-form-urlencoded和multipart/form-data

其中 application/x-www-form-urlencoded為默認編碼方式。

在form的action為get時,瀏覽器用x-www-form-urlencoded的編碼方式,將表單數據編碼為
(name1=value1&name2=value2...),然后把這個字符串append到url后面,用?分隔,跳轉
到這個新的url

當form的action為post時,瀏覽器將form數據封裝到http body中,然后發送到server。

在沒有type=file時候,用默認的 application/x-www-form-urlencoded 就行。

在有 type=file 時候,要用multipart/form-data編碼方式。瀏覽器會把表單以控件為單位分割,
並且為每個部分加上Content-Dispositon(form-data或file)、Content-Type(默認text/plain)、
name(控件name)等信息,並加上分割符(boundary)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM