Разница между http-кодом статуса ответа 402 и 403
Друзья и коллеги,
У нас есть и 402, и 403 http-кода ответа. Хотя 402 зарезервировано для будущего использования.
В чем (или будет) разница между этими двумя. Не полученная оплата должна быть равной не авторизованной, не так ли?
РЕДАКТИРОВАТЬ: Я хотел бы знать ответы на вопрос "Почему 402 требуется, когда у нас уже есть угол 403".
3 ответа
403 Запрещено
Сервер понял запрос, но отказывается его выполнить. Авторизация не поможет и запрос НЕ ДОЛЖЕН повторяться. Если метод запроса не был HEAD и сервер желает обнародовать, почему запрос не был выполнен, он ДОЛЖЕН описать причину отказа в объекте. Если сервер не желает предоставлять эту информацию клиенту, вместо него можно использовать код состояния 404 (не найден).
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Это поможет?
Код состояния HTTP 402 действительно отличается от кода 403:
Как указано в RFC 2616, код состояния 402
402 Payment Required
Это означает, что запрос, как правило, не запрещен, но требует оплаты.
Очевидно, что для использования этого зарезервированного кода состояния проделана определенная работа.
Я думаю, что в настоящее время он не нужен (или просто не используется, потому что не указано, как его использовать), но авторы стандарта решили, что его можно использовать в будущем, что может быть полезно.
Обратите внимание, что пропуск платежа - это только одна из причин, по которой ваш сервер отклоняет запрос. Вы можете получить "запрещенный" статус в других ситуациях, таких как неверные учетные данные, попытка доступа к "частному ресурсу" и т. Д.
Я верю, что 402 существует только для того, чтобы предоставить более подробную информацию о причине отказа в запросе.