第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP“php:/Input”vs$POST

PHP“php:/Input”vs$POST

PHP
繁星點點滴滴 2019-06-17 15:20:29
PHP“php:/Input”vs$POST我已被指示使用這種方法。php://input而不是$_POST當(dāng)與來自JQuery的Ajax請求交互時。我不明白的是,與全局方法相比,使用這個方法有什么好處?$_POST或$_GET.
查看完整描述

3 回答

?
慕尼黑的夜晚無繁華

TA貢獻1864條經(jīng)驗 獲得超6個贊

原因是php://input返回請求的HTTP-Header之后的所有原始數(shù)據(jù),而不管內(nèi)容類型如何。

PHP超全局$_POST,只有應(yīng)該是包裝數(shù)據(jù)

  • application/x-www-form-urlencoded

    (簡單表格-POST的標(biāo)準(zhǔn)內(nèi)容類型)或
  • multipart/form-data-encoded

    (主要用于文件上傳)

這是因為這些是唯一的內(nèi)容類型由用戶代理支持..因此,服務(wù)器和PHP傳統(tǒng)上不會接收任何其他內(nèi)容類型(這并不意味著它們不能接收)。

所以,如果您只是簡單地發(fā)布一個好的舊HTMLform,請求如下所示:

POST /page.php HTTP/1.1key1=value1&key2=value2&key3=value3

但是,如果您經(jīng)常使用Ajax,這種可能性還包括使用類型(String、int、bool)和結(jié)構(gòu)(數(shù)組、對象)交換更復(fù)雜的數(shù)據(jù),因此在大多數(shù)情況下,JSON是最好的選擇。但是帶有JSON有效負(fù)載的請求如下所示:

POST /page.php HTTP/1.1{"key1":"value1","key2":"value2","key3":"value3"}

現(xiàn)在的內(nèi)容應(yīng)該是application/json(或者至少上面沒有提到),所以PHP的$_POST-包裝器不知道如何處理(目前)。

數(shù)據(jù)仍然存在,您只是不能通過包裝器訪問它。因此,您需要自己以原始格式獲取file_get_contents('php://input') (只要不是multipart/form-data-編碼).

這也是如何訪問XML-數(shù)據(jù)或任何其他非標(biāo)準(zhǔn)內(nèi)容類型。


查看完整回答
反對 回復(fù) 2019-06-17
?
鴻蒙傳說

TA貢獻1865條經(jīng)驗 獲得超7個贊

如果POST數(shù)據(jù)格式錯誤,$_POST將不包含任何內(nèi)容。然而,php:/put將有格式錯誤的字符串。

例如,有一些Ajax應(yīng)用程序,它們沒有為上傳文件形成正確的POST鍵值序列,而只是將所有文件轉(zhuǎn)儲為POST數(shù)據(jù),而沒有變量名稱或任何內(nèi)容。$_POST將為空,$_files也為空,而php:/INPUT將包含確切的文件,以字符串形式編寫。


查看完整回答
反對 回復(fù) 2019-06-17
  • 3 回答
  • 0 關(guān)注
  • 602 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號