PHPはiOSからPOST要求の問題を受信できない
823 ワード
やっと解決した、楽しかった!!!
大前提====環境:macコンピュータ、mamp集積環境、webstorm開発ツール、iOSはxcodeを使用しています.
問題の説明:
PHPはiOSにインタフェースを書きます
考え方のガイドライン:
1、最初はmamp環境だと思っていたか、webstorm環境に問題があり、各種検索構成は、役に立たなかった.2、コードで問題を特定し、postmanを試したり、簡単なformフォームpostを書いてコミットしたりすると、正しいpost bodyデータが明らかになります.だから、iOS側に問題があるのではないかと疑って、出力データが欠けている可能性があるので、charles青花磁器でバッグをつかんで、bodyがデータがあることを発見しました.これは疑問ですが、phpもiosも大丈夫そうです.そしてよく見ると、2つの解決策があります.
a,iOSこちら変更:afn設定
b,phpこちらは$_ではありませんPOSTを
c,実はafnがmanagerを初期化する時managerを取り除く.requestSerializer = [AFJSONRequestSerializer serializer];もういいよ!!!
大前提====環境:macコンピュータ、mamp集積環境、webstorm開発ツール、iOSはxcodeを使用しています.
問題の説明:
PHPはiOSにインタフェースを書きます
考え方のガイドライン:
1、最初はmamp環境だと思っていたか、webstorm環境に問題があり、各種検索構成は、役に立たなかった.2、コードで問題を特定し、postmanを試したり、簡単なformフォームpostを書いてコミットしたりすると、正しいpost bodyデータが明らかになります.だから、iOS側に問題があるのではないかと疑って、出力データが欠けている可能性があるので、charles青花磁器でバッグをつかんで、bodyがデータがあることを発見しました.これは疑問ですが、phpもiosも大丈夫そうです.そしてよく見ると、2つの解決策があります.
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];もういいよ!!!