Подтвердить что ты не робот

Код состояния HTTP для отсутствия проверки подлинности

HTTP определяет статус 401 Unauthorized для отсутствия проверки подлинности, но этот статус применяется только к HTTP-аутентификации. Какое состояние я должен вернуть с помощью системы cookie на основе сеанса, когда происходит несанкционированный запрос?

4b9b3361

Ответ 1

Формально 403 Forbidden является правильным ответом. Он определяется как

Авторизация не поможет, и запрос НЕ ДОЛЖЕН быть повторен.

Сбивая с толку часть может быть "Авторизация не поможет", но они действительно означают "HTTP-аутентификацию" (WWW-Authenticate)

Ответ 2

403 Я считаю, что это технически корректно (и, вероятно, наиболее эффективно, если вы реализуете пользовательский API/протокол).

401 не подходит, поскольку он ссылается на авторизацию с заголовком WWW-Authenticate, который не является файлом cookie сеанса.

Если это общедоступный веб-сайт, на котором вы пытаетесь запретить доступ на основе cookie сеанса, 200 с соответствующим телом, чтобы указать, что требуется вход в систему, или временный переадресация 302 на страницу входа в систему.

Ответ 3

Вы можете использовать тестовое условие и передать

Код ошибки: 401.1-Ошибка входа. Ошибка входа в систему неудачна, возможно, из-за неправильного имени пользователя или пароля.

Что конкретно используется для неправильного пароля или неправильного имени пользователя и пароля. Надеюсь, это поможет вам.