首頁  >  文章  >  後端開發  >  php接收不到ios值怎麼辦

php接收不到ios值怎麼辦

藏色散人
藏色散人原創
2022-10-26 10:21:201113瀏覽

php接收不到ios值的解決方法:1、將afn設定為「Content-Type」;2、將「$_POST」改為「json_decode(file_get_contents('php://input') , true)」;3、刪除「manager.requestSerializer = [AFJSONRequestSerializer serializer];」即可。

php接收不到ios值怎麼辦

本教學操作環境:macOS10.12.5系統、PHP8.1版、macbook pro 2020電腦。

php接收不到ios值怎麼辦? PHP接收不到iOS發出POST請求問題?

大前提===”環境:mac電腦,mamp整合環境,webstorm開發工具,iOS是用xcode。

問題描述:

PHP給iOS寫接口,GET請求沒問題,POST請求PHP死活拿不到資料

思路指引:

1 、剛開始以為是mamp環境,或是webstorm環境有問題,各種搜尋配置,不管用。

2、透過程式碼定位問題,嘗試用postman,或寫一個簡單form表單post提交,都可以明顯看到正確post body資料。所以,懷疑iOS這邊有問題,可能輸出資料缺失,於是用charles青花瓷抓包,發現body是有資料的。這就有疑問了,php和ios這邊看起來都沒問題的。

然後仔細看了下,有兩種解決方法:

a,iOS這邊改變:afn設定Content-Type,一直以來都用的application/json,這是以json格式傳遞資料的,更換為application/x-www-form-urlencoded,php那邊用$_POST就可以正常接收資料了。 (後來證明這個辦法不行。。。。。)

b,php這邊不是用$_POST改為json_decode(file_get_contents('php://input'), true)也是可以的。

c,其實afn 初始化manager的時候去掉manager.requestSerializer = [AFJSONRequestSerializer serializer];就可以了! ! ! ! !

推薦學習:《PHP影片教學

以上是php接收不到ios值怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn