301, 302, 307 и 308: перенаправления и метод запроса
Статус перенаправления сообщает клиенту новый адрес и влияет на постоянство перехода и обработку метода запроса.
Назначение
Статус перенаправления сообщает клиенту новый адрес и влияет на постоянство перехода и обработку метода запроса.
Как это работает
307 и 308 сохраняют метод и тело при автоматическом повторении, а 301 и 302 исторически допускают изменение POST на GET. 303 предназначен для получения результата другим запросом, обычно GET.
Пример
HTTP/1.1 308 Permanent Redirect
Location: https://example.com/new-path
Что должно получиться
Ответ задаёт постоянное перенаправление с сохранением метода. Перед применением к рабочему домену проверяют конечный адрес, отсутствие циклов и возможность безопасного повторения запроса.
Граница применения и частая ошибка
Не перенаправляйте формы по общей схеме без проверки метода. Тело запроса может повториться на новом адресе или потеряться в зависимости от статуса и клиента.
Самостоятельная проверка
На локальном обработчике сравните переход GET и POST. В Network посмотрите цепочку запросов и метод после редиректа; тестовые данные не должны содержать реальные секреты.