Fetch | Редиректы | JavaScript

Существует всего 3 сценария обработки редиректов запросов:

fetch (url, {redirect: "follow"})

fetch (url, {redirect: "error"})

fetch (url, {redirect: "manual"})

redirect — это строка, указывающая, следует ли запрос за перенаправлениями, приводит ли к ошибке при обнаружении перенаправления или возвращает перенаправление (непрозрачно). Устанавливает перенаправление redirect запроса request.

Таким образом, потенциально опасный ответ не может случайно просочиться.

request . redirect

Возвращает режим перенаправления, связанный с запросом, который представляет собой строку, указывающую, как перенаправления для запроса будут обрабатываться во время выборки. По умолчанию запрос будет следовать за перенаправлениями.

Статус перенаправления — это состояние 301, 302, 303, 307 или 308.


С запросом связан режим перенаправления (redirect mode): «follow«, «error«, или «manual» («отслеживание», «ошибка» или «ручной»). Если не указано иное, это «follow«.

follow

Следует всем перенаправлениям, возникающим при получении ресурса.

error

Возвращает сетевую ошибку, когда запрос встречается с перенаправлением.

manual

Извлекает отфильтрованный ответ с непрозрачным перенаправлением, когда запрос встречается с перенаправлением, чтобы позволить работнику службы воспроизвести перенаправление в автономном режиме. В остальном ответ неотличим от сетевой ошибки, чтобы не нарушать атомарную обработку перенаправления HTTP.

 

Информационные ссылки

Стандарт Fetch на русском — https://efim360.ru/fetch/

Стандарт Fetch на английском — https://fetch.spec.whatwg.org

Поделись записью