2012-11-13 3 views
3

400 잘못된 요청 오류가 발생하는 HTTP 요청을 실행하려고하면 nginx 서버가 "400 Bad Request", Content-Encoding : gzip 및 응답을 인코딩되지 않은 형식으로 반환합니다.http 요청 오류에 대한 응답을 gzip 할 수 있습니까?

그래서 Content-Encoding 때문에 : gzip 내 코드가 오류를 throw하는 GZIPInputStream으로 응답을 래핑합니다.

내 질문은 : 상태 코드가 "200 OK"가 아닌 경우 유효한 인코딩을 gzip으로 보내고 있습니까? 그렇지 않은 경우 단순히 상태 코드를 확인하고 gzip을 시도하지 않고 200이 아닌 다른 값이 반환 된 경우에만 시도 할 수 있습니다.

이에 대한 규칙/가이드 라인이 있습니까? 어디에서 문서화되어 있습니까?

TIA

+2

gzip은 어떤 응답 코드에서도 유효하지만 어떤 식 으로든 상태 코드만을 사용하여 의사 결정을 할 수 있습니다 (실제로 상태 코드가 200이 아닌 이유를 알지 못합니다) – ice

+0

이것은 다른 코드 라이브러리 용입니다 개발자가 사용할 수 있으므로 가능한 경우 오류가 발생하는 요청 본문을 포함하여 최대한 많은 정보를 제공해야합니다. – isapir

+1

@ice _ "301, 302, 303 : _"왜냐하면 응답의 엔티티에 새로운 하이퍼 링크가있는 짧은 하이퍼 텍스트 노트가 있어야하기 때문에 상태 코드가 200 "_이 아니기 때문에 왜 내용이 필요한지 모르겠습니다. URI (s). "_, 403 : _"서버가 [...] 요청이 이행되지 않은 이유를 공개하기를 원하면 엔터티 "_, ...에 거절 이유를 설명해야합니다. – CodeCaster

답변

4

예, 유효한 인코딩입니다. 콘텐츠 인코딩 (및 전송 인코딩)은 상태 코드와 직교합니다.

관련 문제