XMLHttpRequest: Самый быстрый способ определить, не будет ли ссылка возвращать статус 4xx? - PullRequest
0 голосов
/ 05 сентября 2018

В настоящее время я отправляю запрос 'GET' через XMLHttpRequest в Javascript и просматриваю возвращенный статус, чтобы определить, действительны ли ссылки и не возвращают ли ошибку 4xx. Тем не менее, ссылки, на которые я смотрю, - это видео 10 сек-1 мин +, и я бы предпочел не ждать ответа сервера.

У меня была небольшая ошибка в моем проекте, когда все действительные запросы возвращали 0, а недействительные возвращали 403. Это было связано с тем, что из-за некоторых недопустимых разрешений в моем манифесте. Во всяком случае, это было на самом деле полуидеал, так как я мог просто «предположить», что запросы, возвращающие 0, действительны, а 403 недействительны. На моем сервере есть дополнительная проверка, на которую отправляются ссылки, так что я бы не беспокоился об этом. Это только для некоторых функций интерфейса. Однако действительные ссылки не всегда возвращали 0 (иногда 200), поэтому я хочу найти реальное исправление для этого. Есть ли способ обойти это? Спасибо!

РЕДАКТИРОВАТЬ: ссылки непосредственно на веб-файлы mp4

1 Ответ

0 голосов
/ 05 сентября 2018

В большинстве случаев вам просто нужно дождаться, пока XMLHttpRequest.readyState станет HEADERS_RECEIVED (2) вместо DONE (4). Вы также можете использовать метод HEAD вместо GET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...