Mengendalikan 200 Respons dengan Peristiwa Ralat jQuery
Apabila mengeluarkan permintaan Ajax, adalah perkara biasa untuk menghadapi situasi di mana pelayan mengembalikan status 200 OK kod, menunjukkan permintaan yang berjaya, tetapi peristiwa ralat jQuery dicetuskan. Ini boleh menjadi sangat membingungkan, kerana permintaan itu nampaknya telah berjaya diselesaikan.
Untuk memahami tingkah laku ini, adalah penting untuk mengenali bahawa jQuery cuba mentafsir badan tindak balas berdasarkan parameter DataType yang ditentukan atau Content-Type pengepala dihantar oleh pelayan. Walau bagaimanapun, jika penukaran ini gagal (cth., disebabkan JSON atau XML yang tidak sah), jQuery melancarkan panggilan balik ralat.
Pertimbangkan kod jQuery yang disediakan:
dataType: "json"
Dengan tetapan ini, jQuery menjangka respons JSON yang sah daripada pelayan. Walau bagaimanapun, kod C# pada bahagian pelayan mengembalikan coretan HTML, yang bukan JSON. Ini menyebabkan jQuery gagal dalam penukaran, menyebabkan ralat panggil balik dipanggil.
Untuk menangani isu ini, anda boleh sama ada:
Sebagai alternatif, anda boleh mempertimbangkan untuk memaparkan mesej kejayaan dalam panggilan balik kejayaan dan bukannya bergantung pada kod sebelah pelayan untuk memberikan makluman:
success: function (result) { alert("Record Deleted"); }
Dengan melaksanakan penyelesaian ini, anda boleh memastikan permintaan Ajax anda mengendalikan 200 respons OK dengan betul dan menyediakan gelagat yang diharapkan.
Atas ialah kandungan terperinci Mengapa Panggilan Ajax jQuery Saya Mencetuskan Peristiwa Ralat Walaupun 200 Jawapan OK?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!