⊗jsSpAXFCE 248 of 294 menu

JavaScript-ում AJAX սխալների ամբողջական բռնում

fetch-ի կողմից վերադարձված Promise-ը սխալով է ավարտվում միայն այն դեպքում, եթե առաջացել է ցանցի սխալ: Եթե սերվերը պատասխանել է 404 կամ 500 կարգավիճակով, ապա Promise-ը կհամարվի հաջողակ ավարտված, սակայն ok հատկությունը կլինի false:

Եկեք բռնենք սխալների երկու տեսակներն էլ.

button.addEventListener('click', function() { let promise = fetch('/ajax.html') .then( response => { if (response.ok) { return response.text(); } else { console.log('պատասխանի վատ կարգավիճակ'); return ''; } }, ).then( text => { console.log(text); } ).catch( error => { console.log(error); } ); });

Եկեք անենք, որ HTTP պատասխանի վատ կարգավիճակի հետ կապված սխալը նույնպես բռնվի catch բլոկի կողմից: Դրա համար այն կնետենք հաջորդին throw-ի միջոցով.

button.addEventListener('click', function() { let promise = fetch('/ajax.html') .then( response => { if (response.ok) { return response.text(); } else { throw new Error('պատասխանի վատ կարգավիճակ'); } }, ).then( text => { console.log(text); } ).catch( error => { console.log(error); } ); });

Ցուցադրեք էջի տեքստը, եթե հարցումը հաջող էր, և սխալը, եթե

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել