⊗jsSpAXFCE 248 of 294 menu

Pilnīga AJAX kļūdu pārtveršana JavaScript

Promise, ko atgriež fetch, tiek izpildīts ar kļūdu tikai tad, ja ir radusies tīkla kļūda. Ja serveris atgriež atbildi ar statusu 404 vai 500, tad promise tiks izpildīts veiksmīgi, bet statusa ok vērtība būs iestatīta uz false.

Pārtversim abus kļūdu veidus:

button.addEventListener('click', function() { let promise = fetch('/ajax.html') .then( response => { if (response.ok) { return response.text(); } else { console.log('slikts atbildes statuss'); return ''; } }, ).then( text => { console.log(text); } ).catch( error => { console.log(error); } ); });

Panāksim, ka kļūda, kas saistīta ar sliktu HTTP atbildes statusu, arī tiktu noķerta catch blokā. Lai to izdarītu, izmestsim to tālāk izmantojot throw:

button.addEventListener('click', function() { let promise = fetch('/ajax.html') .then( response => { if (response.ok) { return response.text(); } else { throw new Error('slikts atbildes statuss'); } }, ).then( text => { console.log(text); } ).catch( error => { console.log(error); } ); });

Izvadiet lapas tekstu, ja pieprasījums bija veiksmīgs, un kļūdu, ja kaut kas nogāja greizi.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt