http://www.google.com/
에서 원시 응답을 받으면 Content-Length
헤더가 누락되었습니다. 대신 수신 할 바이트 수는 \r\n\r\n
헤더 코드 끝 부분에서 실제 내용 앞에옵니다.HTTP 응답 : Google이 내용 길이를 잘못 배치했습니다
원시 응답을보고 8000
은 줄 끝 부분에 \r\n
을 포함합니다.
부분 구글 응답
헤더
HTTP/1.1 200 OK
Date: Tue, 28 Oct 2014 18:38:37 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Set-Cookie: ...
Set-Cookie: ...
P3P: ...
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Alternate-Protocol: 80:quic,p=0.01
Transfer-Encoding: chunked
8000 # has '\r\n', I am assuming this is the content-length?
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="en"><head><meta content...`
최종 응답
그래서 ('\ 연구 \ 없음 \ 연구 \ 없음'에 의해 표시) 헤더의 끝 제 질문은 왜 구글이 그렇게 특별한 지, HTTP 바퀴의 발명품을 망칠 수 있다는 것입니다. 그리고 모든 내 답변에서 또는 Google에서 이러한 일이 발생했는지 여부를 설명해야합니다.
비난하기 전에 약간의 조사를 할 수 있습니다. 아이러니하게도, '콘텐츠 길이 누락'이라는 Google 검색 결과의 첫 번째 결과는 답을 알 수있는 단서를 제공합니다. 또한 "HTTP 바퀴를 재발 명"하는 경우 표준 HTTP 헤더 ("X-"로 시작하지 않는 모든 것)에 대해 배울 수있는 모든 작업을 수행해야합니다. 'Transfer-Encoding' 헤더에 대해서 궁금해했다면, 그 답을 찾은 것입니다. – krait