四種常見的 POST 提交數據方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml)


application/json和application/x-www-form-urlencoded區別

四種常見的 POST 提交數據方式(application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml)

 https://www.jianshu.com/p/e47abb91465d

 

application/json和application/x-www-form-urlencoded都是表單數據發送時的編碼類型。

 

EncType:

enctype 屬性規定在發送到服務器之前應該如何對表單數據進行編碼。

默認地,表單數據會編碼為 "application/x-www-form-urlencoded"。就是說,在發送到服務器之前,所有字符都會進行編碼。

 

如下圖所示Content-Type:

 

 

 

application/x-www-form-urlencoded編碼類型的發送和接收

窗體數據被編碼為名稱/值對

客戶端:

發送"test=I'm Egret",瀏覽器按F12,Network中查看發送數據

 

服務端:

接收test數據

 

 application/json的發送和接收

 序列化后的 JSON 字符串

 

客戶端:

發送JSON格式字符串 '{"test":"I'm Client."}'

 

服務端:

1. 用file_get_contents拿Post數據。$_POST['test']取不到數據。

2. 然后使用json_decode解碼。 原始file_get_contents是字符串?

3. php中json訪問方式 $json->test。php中沒有{test:"I'm Client"}這種格式的,$json = {test:"I'm Client"}會報錯。

4. 返回數據時將數組json_encode編碼。php中json格式沒有,用數組代替。

 

使用json格式,php頭部需要加上如下代碼,否則會報錯

1
header( 'Access-Control-Allow-Headers:x-requested-with,content-type' );


免責聲明!

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



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