답변:
표준 Java 클래스에는 완전한 것이 없다고 생각합니다. HttpURLConnection
와 같은 코드가 거의 없습니다 HTTP 100/Continue
.
아파치 HttpComponents의 전체 목록이있다, 비록 :
org.apache.http.HttpStatus
(교체 org.apache.commons.HttpClient.HttpStatus
도달 아파치 웹 클라이언트에서 삶의 끝 )
javax.servlet.http.HttpServletResponse
서블릿 API 의 인터페이스 에는 int
상수 이름 형식의 모든 응답 코드가 있습니다 SC_<description>
. http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html을 참조 하십시오.
HttpURLConnection 클래스 에는 정확한 정수 값의 정적 상수가 있습니다.
java.net.HttpURLConnection.HTTP_BAD_REQUEST
Spring을 사용하는 경우 3.x 릴리스에는 원하는 것이 있습니다 : http://static.springsource.org/spring/docs/3.0.x/api/org/springframework/http/HttpStatus.html
HttpStatus.XXX.value()
. int를 얻으려면 전화해야합니다 .
Netty 를 사용하는 경우 다음을 사용할 수 있습니다.
모두가 귀하의 질문의 "열 유형"부분을 무시하는 것 같습니다.
HTTP 상태 코드에 대한 정식 소스는 없지만 프로젝트에 추가 종속성을 추가하지 않고 필요한 누락 된 상태 상수 를 추가 하는 간단한 방법이 있습니다javax.ws.rs.core.Response.Status
.
javax.ws.rs.core.Response.Status
javax.ws.rs.core.Response.StatusType
인터페이스 의 한 가지 구현입니다 . 원하는 상태 코드에 대한 정의가있는 자체 구현 열거 형을 작성하기 만하면됩니다.
Javax, Jersey 등과 같은 핵심 라이브러리 는 구현이 아닌 인터페이스에 작성됩니다 (또는 반드시 있어야 합니다). 새로운 Status 열거 형은 구현 하기 때문에 상수를 사용하는 어느 곳에서나 사용할 수 있습니다 .StatusType
Status
StatusType
javax.ws.rs.core.Response.Status
자신의 코드도 StatusType
인터페이스에 작성해야합니다 . 이렇게하면 "표준"코드와 함께 고유 한 상태 코드를 모두 사용할 수 있습니다.
다음은 "Informational 1xx"상태 코드에 정의 된 상수를 사용한 간단한 구현의 요지입니다. https://gist.github.com/avendasora/a5ed9acf6b1ee709a14a
javax.servlet.http.HttpServletResponse 클래스 사용
예:
javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED //401
javax.servlet.http.HttpServletResponse.SC_INTERNAL_SERVER_ERROR //500
1) 코드 만있는 경우 이유 텍스트 를 얻으려면 다음을 사용할 수 있습니다.
org.apache.http.impl.EnglishReasonPhraseCatalog.INSTANCE.getReason(httpCode,null)
httpCode
HTTP 응답에서 가져온 이유 코드는 어디에 있습니까 ?
자세한 내용은 https://hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/org/apache/http/impl/EnglishReasonPhraseCatalog.html 을 참조하십시오
2) 텍스트 만있는 경우 이유 코드 를 얻으려면 을 사용할 수 있습니다 BasicHttpResponse
.
자세한 내용은 여기를 참조하십시오 : https://hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/org/apache/http/message/BasicHttpResponse.html
또한 Restlet Status 클래스를 확인하십시오.
http://www.restlet.org/documentation/1.1/api/org/restlet/data/Status.html