Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Bilakah ralat digunakan dalam ajax?

Bilakah ralat digunakan dalam ajax?

WBOY
WBOYasal
2021-12-23 17:17:362300semak imbas

penggunaan ralat: 1. Digunakan apabila jenis data yang dikembalikan oleh latar belakang tidak konsisten dengan apa yang ditulis di bahagian hadapan 2. Digunakan apabila async meminta penyegerakan dan masalah tak segerak; 4. Apabila Digunakan apabila parameter yang diluluskan tidak dalam format pengekodan yang disokong oleh ajax.

Bilakah ralat digunakan dalam ajax?

Persekitaran pengendalian artikel ini: sistem windows7, versi javascript1.8.5&&&html5, komputer Dell G3.

Bilakah ralat digunakan dalam ajax

  • ralat dataType (dataType digunakan untuk menentukan pulangan latar belakang? parameter Type)

Ralat jenis: Jika jenis dataType yang dikembalikan oleh latar belakang tidak konsisten dengan apa yang ditulis di bahagian hadapan, ralat akan dilonjak.

Ralat format: Selepas jquery1.4, keperluan format untuk json sangat ketat, dan ralat format json juga akan melompat kepada ralat.{"test":1} Perhatikan format

Kadangkala, apabila ia tidak diperlukan Dalam kes mengembalikan nilai, ikut format templat dan tetapkan parameter dataType: "json" pada masa ini, apabila nilai pemindahan ajax betul, akan berlaku situasi khas di mana an ralat dilaporkan dalam status kejayaan 200 kembali.

Jika tidak dinyatakan, jQuery akan membuat pertimbangan bijak secara automatik berdasarkan maklumat MIME pakej HTTP Contohnya, jenis XML MIME diiktiraf sebagai XML. Dalam 1.4, JSON akan menjana objek JavaScript dan skrip akan melaksanakan skrip. Data yang dikembalikan oleh pelayan kemudiannya akan dihuraikan berdasarkan nilai ini dan dihantar ke fungsi panggil balik. Nilai yang tersedia:

"xml": Mengembalikan dokumen XML yang boleh diproses dengan jQuery.

"html": Mengembalikan maklumat HTML teks biasa; teg skrip yang disertakan akan dilaksanakan apabila dimasukkan ke dalam dom.

"skrip": Mengembalikan kod JavaScript teks biasa. Keputusan tidak dicache secara automatik. Melainkan parameter "cache" ditetapkan. Nota: Apabila membuat permintaan jauh (bukan di bawah domain yang sama), semua permintaan POST akan ditukar kepada permintaan GET. (Kerana teg skrip DOM akan digunakan untuk memuatkan)

"json": Mengembalikan data JSON.

"jsonp": Format JSONP. Apabila memanggil fungsi menggunakan format JSONP, seperti "myurl?callback=?"jQuery akan secara automatik menggantikan ?

"teks": Mengembalikan rentetan teks biasa

  • penyegerakan permintaan tak segerak dan masalah tak segerak

Async lalai kepada benar (permintaan tak segerak). latar belakang halaman, tetapi halaman Memuatkan ajax anda telah dilaksanakan, dan pemindahan nilai dan penerimaan selesai di latar belakang Pada masa ini, data tidak boleh diminta, jadi anda boleh mempertimbangkan untuk menukar permintaan ajax kepada percubaan segerak.

  • data tidak boleh ditulis

  • Jika data kosong, "{}" mesti dihantar; nilai yang dikembalikan ialah format xml. Dan menggesa data parsererror:”{}”

Pengecualian parsererror juga berkaitan dengan jenis Header. dan pengepala pengekodan('Content-type: text/html; charset=utf8');

  • Parameter lulus

  • Mestilah format pengekodan yang disokong oleh ajax

  • Masalah laluan URL

  • Laluan tidak boleh mengandungi aksara Cina

Secara amnya, kita boleh menentukan punca ralat dengan menganalisis beberapa parameter dalam ralat:

XMLHttpRequest.readyState: Kod status

0 - (tidak dimulakan) send() kaedah belum dipanggil lagi

1 - (Memuatkan) Kaedah hantar() telah dipanggil dan permintaan sedang dihantar

2 - (Pemuatan selesai) Kaedah hantar() telah dilaksanakan dan semua kandungan respons telah diterima

3 - (Interaktif) Kandungan respons sedang dihuraikan

4 - (Lengkap) Kandungan respons dihuraikan dan boleh dipanggil pada klien

XMLHttpRequest.status: Memanggil status permintaan http

Terdapat banyak status permintaan Jika anda menghadapi kod status ralat tertentu, anda boleh menyemaknya di Baidu.

XMLHttpRequest.responseText: Mesej ralat dikembalikan

Jika ralat berlaku, mesej ralat (parameter kedua) mungkin bukan sahaja batal, tetapi mungkin juga "tamat masa", "ralat", " notmodified" dan "parsererror".

【Tutorial berkaitan yang disyorkan:

Tutorial video AJAX

Atas ialah kandungan terperinci Bilakah ralat digunakan dalam ajax?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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 sebelumnya:Apakah maksud atas dalam html5Artikel seterusnya:Apakah maksud atas dalam html5