Heim  >  Artikel  >  Backend-Entwicklung  >  Wie sende ich JSON-Daten von JavaScript an PHP?

Wie sende ich JSON-Daten von JavaScript an PHP?

Linda Hamilton
Linda HamiltonOriginal
2024-11-13 07:31:02975Durchsuche

How to Send JSON Data from JavaScript to PHP?

Senden von JSON-Daten von JavaScript an PHP

Das Übertragen von JSON-Daten von JavaScript im Browser an einen PHP-Server zum Parsen kann auf verschiedene Weise erreicht werden Methoden.

Methode A: Verwendung von application/json Header

  1. Konvertieren Sie das Objekt in JavaScript mit JSON.stringify() in einen JSON-String.
  2. Senden Sie den JSON-String mit XMLHttpRequest mit application/json an den Server header:
request.setRequestHeader("Content-type", "application/json");
request.send(str_json);
  1. Lesen Sie auf dem PHP-Server die POST-Rohdaten mit file_get_contents('php://input'), um die JSON-Zeichenfolge zu erhalten.

Methode B: Verwenden des application/x-www-form-urlencoded-Headers

  1. Konvertieren Sie das JSON-Objekt mithilfe von JSON.stringify() und dem Format in einen Standard-POST-String json_string=....
  2. Senden Sie die POST-Zeichenfolge mithilfe von XMLHttpRequest mit dem application/x-www-form-urlencoded-Header an den Server.
  3. Greifen Sie in PHP über das $ auf die JSON-Zeichenfolge zu _POST['json_string']-Array. Verwenden Sie json_decode(), um die abgerufene JSON-Zeichenfolge zu analysieren.

Falle:

Versuch, die JSON-Zeichenfolge mit der Anwendung/x-www-form- zu senden. urlencoded-Header und der anschließende Zugriff über $_POST führt zu einem leeren Array, da PHP Daten im yval=xval& Format. Verwenden Sie daher php://input, um auf rohe POST-Daten zuzugreifen, wenn Sie den application/json-Header verwenden.

Zusätzliche Ressourcen:

  • [So greifen Sie auf POST zu Daten ein PHP](https://www.php.net/manual/en/features.http-post-vars.php)
  • [RFC 4627: Der application/json-Medientyp für JSON](http:/ /www.ietf.org/rfc/rfc4627.txt)

Das obige ist der detaillierte Inhalt vonWie sende ich JSON-Daten von JavaScript an PHP?. 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