Heim  >  Artikel  >  Backend-Entwicklung  >  Was soll ich tun, wenn PHP den iOS-Wert nicht empfangen kann?

Was soll ich tun, wenn PHP den iOS-Wert nicht empfangen kann?

藏色散人
藏色散人Original
2022-10-26 10:21:201113Durchsuche

Lösung dafür, dass PHP den iOS-Wert nicht empfängt: 1. Afn auf „Content-Type“ setzen; 2. „$_POST“ in „json_decode(file_get_contents('php://input'), true)“ ändern;3 "manager.requestSerializer = [AFJSONRequestSerializer Serializer];".

Was soll ich tun, wenn PHP den iOS-Wert nicht empfangen kann?

Die Betriebsumgebung dieses Tutorials: macOS 10.12.5-System, PHP-Version 8.1, MacBook Pro 2020-Computer.

Was soll ich tun, wenn PHP den iOS-Wert nicht empfangen kann? PHP kann keine POST-Anfrage von iOS empfangen?

Hauptprämisse ===》Umgebung: Mac-Computer, integrierte Mamp-Umgebung, Webstorm-Entwicklungstool, iOS verwendet Xcode.

Problembeschreibung:

PHP schreibt eine Schnittstelle für iOS. Es gibt kein Problem mit GET-Anfragen, aber PHP kann die Daten nicht mit POST-Anfragen abrufen.

Zuerst dachte ich, es sei eine Mamp-Umgebung , oder es gab ein Problem mit der Webstorm-Umgebung usw. Suchkonfiguration, funktioniert nicht.

2. Suchen Sie das Problem anhand des Codes, versuchen Sie, Postman zu verwenden, oder schreiben Sie eine einfache Formular-Beitragsübermittlung, und Sie können die korrekten Beitragstextdaten deutlich sehen. Daher vermutete ich, dass es ein Problem mit iOS gab und die Ausgabedaten möglicherweise fehlten. Daher habe ich das Paket mit Charles Blue und White Porcelain erfasst und festgestellt, dass der Körper Daten enthielt. Dies ist eine Frage. Unter PHP und iOS scheint es kein Problem zu geben.

Dann habe ich genauer hingesehen und zwei Lösungen gefunden:

a. Änderungen auf der iOS-Seite: afn setzt den Inhaltstyp, der bisher verwendet wurde, um Daten im JSON-Format zu übertragen Anwendung. /x-www-form-urlencoded, verwenden Sie $_POST auf der PHP-Seite, um Daten normal zu empfangen. (Später wurde bewiesen, dass diese Methode nicht funktioniert...)

b, anstatt $_POST auf der PHP-Seite zu verwenden, ist es auch möglich, es in json_decode(file_get_contents('php://input') zu ändern, WAHR).

c, tatsächlich, wenn afn den Manager initialisiert, entfernen Sie einfach manager.requestSerializer = [AFJSONRequestSerializer serializer] und das war’s! ! ! ! !

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn PHP den iOS-Wert nicht empfangen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn