Я пытаюсь использовать библиотеку Java для проверки юниверса возможных ответов HTTP, вместо того, чтобы писать свою собственную логику для проверки каждого кода ответа отдельно.Почему «302» не определен в Response.Status из javax.ws.rs?
Я нашел статический класс Response.Status
в javax.ws.rs, который, кажется, идеально подходит для этой цели. В его документации указано:
Обычно используемые коды состояния, определенные HTTP, см. Документацию по HTTP/1.1 для получения полного списка.
Если вы посещаете link to the HTTP/1.1 docs, на который ссылается документации javax, вы явно видите 302
ответа код статуса, как являющийся действительным.
Однако следующий вызов возвращает null
, а это означает, что «согласование статуса или нуль нет соответствия Статус не определен» - что, очевидно, неверно:
Response.Status.fromStatusCode(302);
И действительно, 302
/FOUND
не в перечисление, определенное в этом классе.
Есть ли у кого-нибудь идеи, почему это так? Это недосмотр в коде javax.ws.rs
- или это было сделано намеренно?
Я полагаю, что они не считали 302 «широко используемым». –
@HotLicks это безумный разговор (им, а не вы). 302, вероятно, является одним из наиболее распространенных кодов статуса - он используется для перенаправления. – jtravaglini