Rumah > hujung hadapan web > tutorial js > Mengapa 200 OK Ajax Respons Kadangkala Mencetuskan Peristiwa Ralat?

Mengapa 200 OK Ajax Respons Kadangkala Mencetuskan Peristiwa Ralat?

DDD
Lepaskan: 2024-11-27 00:29:11
asal
513 orang telah melayarinya

Why Does a 200 OK Ajax Response Sometimes Trigger an Error Event?

200 Respons OK Mencetuskan Peristiwa Ralat dalam Ajax: Punca Punca dan Penyelesaian

Apabila permintaan Ajax mengembalikan respons 200 OK, tingkah laku lalai jQuery adalah untuk melaksanakan acara kejayaan. Walau bagaimanapun, dalam beberapa kes, peristiwa ralat mungkin dicetuskan. Percanggahan ini timbul daripada ketidakpadanan antara respons yang dijangkakan dan respons sebenar.

Kes Respons JSON Tidak Sah

Dalam contoh yang disediakan, kod jQuery menentukan jenis data daripada "json." Ini mencetuskan jQuery untuk mengharapkan respons JSON yang sah daripada pelayan. Walau bagaimanapun, kod C# mengembalikan HTML dengan kod status 200 OK.

Memandangkan respons tidak mematuhi format JSON yang dijangkakan, jQuery mentafsirkannya sebagai ralat dan menyalakan peristiwa ralat. Untuk menyelesaikan masalah ini, adalah disyorkan untuk mengalih keluar parameter dataType daripada kod jQuery. Ini akan mengarahkan jQuery untuk menganggap respons sebagai rentetan data mentah.

Mengembalikan Respons JavaScript

Penyelesaian lain ialah mengubah suai kod sebelah pelayan untuk mengembalikan yang sah Respons JavaScript. Ini boleh dicapai dengan menetapkan pengepala Jenis Kandungan kepada "aplikasi/javascript" dan kemudian membenamkan kod JavaScript yang diingini (cth., "alert('Rekod Dipadam');") sebagai respons.

Mengembalikan Respons JSON

Untuk fleksibiliti yang lebih besar, selalunya lebih baik untuk mengembalikan respons JSON dan mengendalikan menghuraikan dan memaparkan dalam panggilan balik kejayaan. Untuk melakukan ini, kod sebelah pelayan hendaklah:

  1. Tetapkan pengepala Jenis Kandungan kepada "application/json"
  2. Kembalikan objek JSON yang mengandungi mesej yang diingini (cth., { "message": "Rekod dipadamkan"})

Dalam kod jQuery, panggilan balik kejayaan kemudian boleh diubah suai untuk menghuraikan respons JSON dan memaparkan mesej dengan sewajarnya.

Atas ialah kandungan terperinci Mengapa 200 OK Ajax Respons Kadangkala Mencetuskan Peristiwa Ralat?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan