Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengendalikan Lencongan Selepas Panggilan AJAX jQuery untuk Mencegah Respons Terganggu?
Menguruskan Permintaan Ubah Hala Selepas Panggilan Ajax jQuery
Apabila menggunakan $.post() jQuery untuk memanggil servlet, ada kemungkinan untuk menghadapi ubah hala arahan apabila tamat masa sesi. Arahan ini mengarahkan penyemak imbas untuk menavigasi ke halaman log masuk, mengganggu respons Ajax yang dimaksudkan.
Menggunakan JSON untuk Pengurusan Ubah Hala
Untuk menyelesaikan isu ini, pertimbangkan untuk menggunakan JSON sebagai sebahagian daripada respons Ajax anda. Daripada menggunakan kod status HTTP bukan standard seperti 278, semua respons boleh mengekalkan kod status 200. Badan tindak balas akan mengandungi objek JSON dengan dua ahli utama: data.redirect dan data.form.
Pengendalian Sisi Pelanggan
Di sisi klien, JavaScript kod akan menggunakan objek JSON ini untuk menentukan tindakan yang sesuai. Jika data.redirect wujud, ia mewakili URL untuk mengubah hala penyemak imbas. Jika data.form wujud, ia mengandungi kod HTML untuk menggantikan borang yang ditetapkan pada halaman semasa.
Berikut ialah contoh bagaimana ini boleh dilaksanakan dalam jQuery:
$.ajax({ type: "POST", url: reqUrl, data: reqBody, dataType: "json", success: function(data, textStatus) { if (data.redirect) { window.location.href = data.redirect; } else { $("#myform").replaceWith(data.form); } } });
Dengan menggunakan JSON, anda boleh mengekalkan kawalan ke atas kedua-dua ubah hala dan operasi penggantian borang, memastikan pengalaman pengguna yang lancar semasa panggilan Ajax.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Lencongan Selepas Panggilan AJAX jQuery untuk Mencegah Respons Terganggu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!