Rumah >pembangunan bahagian belakang >masalah PHP >Apakah yang perlu saya lakukan jika php tidak dapat menerima nilai ios?

Apakah yang perlu saya lakukan jika php tidak dapat menerima nilai ios?

藏色散人
藏色散人asal
2022-10-26 10:21:201122semak imbas

Penyelesaian kepada masalah yang php tidak dapat menerima nilai ios: 1. Tetapkan afn kepada "Content-Type" 2. Tukar "$_POST" kepada "json_decode(file_get_contents('php://input') , benar)"; 3. Padamkan "manager.requestSerializer = [AFJSONRequestSerializer serializer];".

Apakah yang perlu saya lakukan jika php tidak dapat menerima nilai ios?

Persekitaran pengendalian tutorial ini: sistem macOS10.12.5, PHP versi 8.1, komputer macbook pro 2020.

Apakah yang perlu saya lakukan jika php tidak dapat menerima nilai ios? PHP tidak boleh menerima permintaan POST daripada iOS?

Premis utama ===》Persekitaran: komputer mac, persekitaran bersepadu mamp, alat pembangunan ribut web, iOS menggunakan xcode.

Perihalan masalah:

PHP menulis antara muka untuk permintaan GET baik, tetapi permintaan POST tidak boleh mendapatkan data

Panduan:

1 , Pada mulanya saya fikir ia adalah persekitaran mamp, atau terdapat sesuatu yang tidak kena dengan persekitaran ribut web, dan pelbagai konfigurasi carian tidak berfungsi.

2. Cari masalah melalui kod, cuba gunakan posmen, atau tulis penyerahan pos borang yang mudah, anda boleh melihat dengan jelas data badan siaran yang betul. Oleh itu, saya mengesyaki bahawa terdapat masalah pada bahagian iOS, dan data output mungkin hilang, jadi saya menggunakan Charles Blue dan White Porcelain untuk menangkap paket dan mendapati bahawa badan itu mempunyai data. Ini adalah soalan. Nampaknya tiada masalah pada PHP dan iOS.

Kemudian saya melihat dengan teliti dan menemui dua penyelesaian:

a Perubahan pada iOS: afn set Content-Type untuk penghantaran data ditukar kepada application/x-www-form-urlencoded, PHP boleh menggunakan $_POST untuk menerima data seperti biasa. (Kemudian telah terbukti bahawa kaedah ini tidak berfungsi...)

b, daripada menggunakan $_POST, ia juga mungkin untuk menukar kepada json_decode(file_get_contents('php://input'), true ) di sebelah PHP.

c, sebenarnya, apabila afn memulakan pengurus, alih keluar manager.requestSerializer = [AFJSONRequestSerializer serializer]; ! ! ! !

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika php tidak dapat menerima nilai ios?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn