Wie gehe ich mit JSON-Anfragen mit dem Inhaltstyp „application/JSON' in PHP um?

Susan Sarandon
Freigeben: 2024-10-20 22:58:30
Original
365 Leute haben es durchsucht

How to Handle JSON Requests with

PHP verarbeitet JSON-Anfrage mit Anwendungs-/JSON-Inhaltstyp

Wenn Sie eine AJAX-Anfrage mit dem Inhaltstyp „application/json“ senden, Das Standardverhalten von PHP beim Empfang der Anforderungsparameter wird mehrdeutig. Dieses Problem entsteht dadurch, dass PHP erwartet, dass Post-Parameter URL-kodiert sind, JSON-kodierte Daten hingegen nicht.

Wenn in solchen Szenarien der Inhaltstyp „application/json“ ist, erfolgt der Zugriff auf die Parameter über PHPs $ _POST (wird für URL-codierte Daten verwendet) gibt ein leeres Array zurück. Um JSON-Anfragen in PHP ordnungsgemäß zu verarbeiten, ist ein alternativer Ansatz erforderlich.

Lösung: Verwenden von file_get_contents() zum Abrufen von JSON-Daten

Anstatt sich auf $_POST, PHP zu verlassen bietet die Funktion file_get_contents() zum Lesen von Rohdaten aus verschiedenen Quellen, einschließlich des PHP-Eingabestreams. In Kombination mit json_decode() können Sie mit dieser Funktion JSON-codierte Daten in Ihrem PHP-Skript analysieren und verwenden.

Hier ist ein Beispiel, das zeigt, wie eine JSON-Anfrage mit dem Inhaltstyp „application/json“ verarbeitet wird PHP:

<code class="php"><?php
$json_data = json_decode(file_get_contents('php://input'));
var_dump($json_data);
?></code>
Nach dem Login kopieren

In diesem Beispiel ruft file_get_contents('php://input') die rohen JSON-Daten aus der Anfrage ab und json_decode() konvertiert sie in ein Array oder Objekt, das dann sein kann in Ihrem Skript abgerufen und weiterverarbeitet werden.

Das obige ist der detaillierte Inhalt vonWie gehe ich mit JSON-Anfragen mit dem Inhaltstyp „application/JSON' in PHP um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!