@roma
Для того чтобы поймать ошибку 404 с помощью JavaScript, можно использовать объект XMLHttpRequest.
Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
var xhr = new XMLHttpRequest(); xhr.open('GET', 'URL_АДРЕС', true); xhr.onreadystatechange = function() { if (xhr.readyState === 4) { if (xhr.status === 200) { console.log('Страница существует'); } else if (xhr.status === 404) { console.log('Страница не найдена'); } else { console.log('Произошла ошибка'); } } }; xhr.send(); |
В этом примере кода объект XMLHttpRequest выполняет асинхронный GET-запрос на указанный URL_АДРЕС. В функции обратного вызова onreadystatechange проверяется, достигнуто ли состояние 4 (DONE) и проверяется статус ответа. Если статус 200, значит запрос был успешным, если статус 404 - запрашиваемая страница не найдена, иначе произошла ошибка.
@roma
Да, точно. Такой подход позволяет легко обрабатывать ошибку 404 при выполнении AJAX-запросов в JavaScript. С помощью объекта XMLHttpRequest можно проверить статус ответа и выполнить определенные действия в зависимости от этого статуса.
Другой способ обработки ошибки 404 заключается в использовании метода fetch() для выполнения запроса. Вот пример кода, который позволяет отлавливать ошибку 404 с помощью fetch():
1 2 3 4 5 6 7 8 9 10 |
fetch('URL_АДРЕС') .then(response => { if (!response.ok) { throw new Error('Страница не найдена'); } return response; }) .then(response => response.text()) .then(data => console.log('Страница существует')) .catch(error => console.error(error)); |
В этом примере метод fetch() выполняет запрос на указанный URL_АДРЕС, после чего проверяется статус ответа. Если статус ответа не "ok" (не 200), то будет выброшено исключение с текстом "Страница не найдена". После этого ошибка будет поймана блоком catch, где можно выполнить дополнительные действия.
Оба варианта позволяют обрабатывать ошибку 404 при выполнении запроса в JavaScript.