Bagaimana untuk Menghantar Data JSON dari JavaScript ke PHP: Dua Pendekatan Berkesan?

Patricia Arquette
Lepaskan: 2024-11-14 12:55:02
asal
174 orang telah melayarinya

How to Send JSON Data from JavaScript to PHP: Two Effective Approaches?

Menghantar Data JSON daripada Javascript ke PHP

Cabaran timbul apabila cuba menyampaikan data JSON daripada persekitaran Javascript penyemak imbas kepada pelayan di mana PHP akan mentafsirkannya. Untuk menangani perkara ini, dua pendekatan telah terbukti berkesan:

Versi 1: Memanfaatkan Pengepala Permintaan aplikasi/json

  1. Tukar objek Javascript menjadi rentetan JSON menggunakan JSON .stringify().
  2. Gunakan XMLHttpRequest untuk menghantar rentetan JSON ke pelayan.
  3. Pada akhir PHP, dapatkan semula data POST mentah menggunakan file_get_contents('php://input').

Versi 2: Menggunakan aplikasi/x- www-form-urlencoded

  1. Karang rentetan POST standard menggunakan format "variable_name=value&variable_name_2=value_2".
  2. Dalam Javascript, tetapkan rentetan ini kepada str_json.
  3. Dalam PHP, tatasusunan $_POST PHP akan diisi apabila menerima data POST.

Perangkap kepada Elakkan

Pada mulanya, cubaan untuk menyampaikan rentetan JSON dengan pengepala permintaan yang salah boleh membawa kepada kesukaran. Menggunakan application/x-www-form-urlencoded dengan tatasusunan $_POST dalam PHP akan menghasilkan tatasusunan kosong. Sebaliknya, menggunakan aplikasi/json memerlukan akses data POST mentah melalui php://input.

Rujukan

  • [Cara mengakses data POST dalam PHP?](https://stackoverflow.com/questions/4199290/how-to-access-post-data-in-php)
  • [IETF RFC 4627: Jenis Media aplikasi/json untuk Objek JavaScript Notasi (JSON)](http://www.ietf.org/rfc/rfc4627.txt)

Atas ialah kandungan terperinci Bagaimana untuk Menghantar Data JSON dari JavaScript ke PHP: Dua Pendekatan Berkesan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan