Bagaimana untuk Menghantar Data JSON dengan jQuery: Mengapa Saya Menerima Rentetan Pertanyaan Sebaliknya?

Susan Sarandon
Lepaskan: 2024-11-02 10:30:30
asal
130 orang telah melayarinya

How to Send JSON Data with jQuery: Why Am I Receiving a Query String Instead?

Memahami Penghantaran Data JSON dengan jQuery

Menghantar data dalam format JSON adalah penting untuk komunikasi yang cekap antara halaman web dan pelayan. Walau bagaimanapun, jika anda menghadapi data dihantar dalam cara yang tidak diformat, seperti "City=Moscow&Age=25", ini mungkin disebabkan oleh kekurangan konfigurasi permintaan yang betul.

Kod yang disediakan cuba menghantar data JSON menggunakan jQuery's kaedah $.ajax(). Secara lalai, jQuery menukar data kepada rentetan pertanyaan, menghasilkan format "City=Moscow&Age=25". Untuk menyelesaikan masalah ini, ikut langkah berikut:

  1. Gunakan JSON.stringify(): Tukar objek JavaScript (arr) kepada rentetan JSON menggunakan JSON.stringify().
  2. Tetapkan Jenis Kandungan Permintaan: Tentukan jenis kandungan permintaan sebagai "application/json; charset=utf-8" menggunakan sifat contentType. Ini memberitahu pelayan bahawa data sedang dihantar sebagai JSON.
  3. Pastikan Respons JSON: Tetapkan sifat dataType: 'json' untuk menunjukkan bahawa respons yang dijangkakan daripada pelayan harus berada dalam JSON format.

Berikut ialah pembetulan kod:

<code class="javascript">var arr = { City: 'Moscow', Age: 25 };
$.ajax({
    url: 'Ajax.ashx',
    type: 'POST',
    data: JSON.stringify(arr),
    contentType: 'application/json; charset=utf-8',
    dataType: 'json',
    async: false,
    success: function(msg) {
        alert(msg);
    }
});</code>
Salin selepas log masuk

Nota Tambahan:

  • arr bukan tatasusunan tetapi objek JavaScript. Tatasusunan disertakan dalam [].
  • Panggil balik kejayaan akan menghuraikan respons JSON secara automatik ke dalam objek JavaScript jika pelayan menghormati protokol HTTP dan membalas dengan "Content-Type: application/json."

Atas ialah kandungan terperinci Bagaimana untuk Menghantar Data JSON dengan jQuery: Mengapa Saya Menerima Rentetan Pertanyaan Sebaliknya?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!