Безопасно ли использовать код состояния HTTP 308 постоянное перенаправление (предложение) в ответах сервера? Проблема с 301 Moved Permanently заключается в том, что он работает только с запросами GET (честно говоря: POST преобразуется в GET, что НЕ является вариантом).
Код состояния очень новый для "времени RFC", что бы вы посоветовали?
Что бы сделал браузер, если бы он не знал 308? Сможет ли он найти место и сделать 302?
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308
Предложение RFC 7538 сегодня пользуется широкой поддержкой. Это безопасно.
308 вместо 301. 307 вместо 302.
move! = перенаправить
Перемещение напоминает конкретный адрес и / или перемещенный файл. Перенаправление - это новое место или адрес.
Хотя 308 сейчас является стандартом (https://tools.ietf.org/html/rfc7538), в настоящее время это небезопасно [Edit] (по состоянию на 3 апреля 2019 г.), особенно для настольных приложений, но может быть почти безопасным в некоторых регионах (например, в Индии) или для приложений, предназначенных для планшетов и мобильных устройств.
Недостаток безопасности связан с тем, что IE 11 в Windows 7 и 8.1 не поддерживает его. В IE 11 сайт просто зависает. К счастью, IE, поставляемый с Windows 10, поддерживает его, так что это будет всего лишь случай подождать, пока массовое население перейдет от Windows 7 (Win 7 только что превзошла Win 10 в глобальной статистике использования, Win 8 значительно менее популярны, чем оба) [Edit], или ваша компания принимает решение больше не поддерживать его (что вы можете сделать очень веским аргументом с 14 января 2020 г., когда Windows 7 теряет даже долгосрочную поддержку).
Все остальные современные браузеры поддерживают его (Chrome, Firefox, Safari, Edge, Opera).
[Edit] Статистика использования за март 2019 года, которая поможет вам принять решение:
Итак, решение использовать 308, вероятно, повлияет (моя предполагаемая оценка на основе приведенной выше статистики) от 5 до 9% пользователей настольных компьютеров на момент этого редактирования (3/4/2019). Если ваше приложение больше ориентировано на планшеты / мобильные устройства, это значение будет значительно ниже. Точно так же, если ваше приложение предназначено специально для индийского рынка.
Вы можете проверить, поддерживает ли ваш браузер 308 редиректов, здесь: https://webdbg.com/test/308/
Чтобы покончить с этим: Нет, использовать этот код состояния небезопасно. См. Комментарии для деталей.
308 не является стандартом - это предложение, которое все еще находится на экспериментальной стадии. Браузеры должны вернуться к интерпретации 300 любой ошибки 301–399, которую они конкретно не понимают.
Некоторые браузеры просто полностью не справляются с этим кодом состояния.