범위 요청이있는 샘플 http 세션을 보여줄 수 있습니까? 요청 헤더와 응답 헤더는 무엇을 의미합니까?샘플 http 범위 요청 세션
답변
다음은 Chrome과 정적 웹 서버 간의 교환으로, MP4 비디오를 가져옵니다.
동영상에 대한 최초 요청입니다. - 지원을 확인하는 개방형 범위 후속 요청 감지 이전 응답에
GET /BigBuckBunny_320x180.mp4
Cache-Control: max-age=0
Connection: keep-alive
Accept-Language: en-GB,en-US,en
Host: localhost:8080
Range:
Accept: text/html,application/xhtml+xml,application/xml,*/*
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 ...
Accept-Encoding: gzip,deflate,sdch
Accept-Charset: ISO-8859-1,utf-8,*
200 OK
Content-Type: video/mp4
Connection: keep-alive
Last-Modified: Wed,14 Dec 2011 15:50:59 GMT
ETag: A023EF02BD589BC472A2D6774EAE3C58
Transfer-Encoding:
Content-Length: 64657027
Accept-Ranges: bytes
Server: Brisket/1.0.1
Date: Wed,14 Dec 2011 16:11:24 GMT
Range 헤더 : 서버가 범위 헤더를 지원하고 표시하기 위해 Accept-Ranges
응답 헤더를합니다. 파일의 끝에 포착
GET /BigBuckBunny_320x180.mp4
Connection: keep-alive
Accept-Language: en-GB,en-US,en
Host: localhost:8080
Range: bytes=0-
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 ...
Referer: http://localhost:8080/BigBuckBunny_320x180.mp4
Accept-Encoding: identity
Accept-Charset: ISO-8859-1,utf-8,*
206 Partial Content
Content-Type: video/mp4
Connection: keep-alive
Last-Modified: Wed,14 Dec 2011 15:50:59 GMT
ETag: A023EF02BD589BC472A2D6774EAE3C58
Transfer-Encoding:
Content-Length: 64657027
Accept-Ranges: bytes
Server: Brisket/1.0.1
Date: Wed,14 Dec 2011 16:11:25 GMT
Content-Range: bytes 0-64657026/64657027
후속 범위 요구 (아마 캡처 후단 메타) : 반응은 206 개 상태 및 응답 체에 존재하는 바이트를 나타내는 Content-Range
헤더를 반환
GET /BigBuckBunny_320x180.mp4
Connection: keep-alive
Accept-Language: en-GB,en-US,en
Host: localhost:8080
Range: bytes=64312833-64657026
Accept: */*
If-Range: A023EF02BD589BC472A2D6774EAE3C58
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 ...
Referer: http://localhost:8080/BigBuckBunny_320x180.mp4
Accept-Encoding: identity
Accept-Charset: ISO-8859-1,utf-8,*
206 Partial Content
Content-Type: video/mp4
Connection: keep-alive
Last-Modified: Wed,14 Dec 2011 15:50:59 GMT
ETag: A023EF02BD589BC472A2D6774EAE3C58
Transfer-Encoding:
Content-Length: 344194
Accept-Ranges: bytes
Server: Brisket/1.0.1
Date: Wed,14 Dec 2011 16:11:25 GMT
Content-Range: bytes 64312833-64657026/64657027
사용자가 다운로드 한 범위를 넘어서 비디오 진행률 막대를 클릭하면 선택한 위치에서 재생을 시작하는 범위 요구가 발생합니다.
GET /BigBuckBunny_320x180.mp4
Connection: keep-alive
Accept-Language: en-GB,en-US,en
Host: localhost:8080
Range: bytes=1073152-64313343
Accept: */*
If-Range: A023EF02BD589BC472A2D6774EAE3C58
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.7 ...
Referer: http://localhost:8080/BigBuckBunny_320x180.mp4
Accept-Encoding: identity
Accept-Charset: ISO-8859-1,utf-8,*
206 Partial Content
Content-Type: video/mp4
Connection: keep-alive
Last-Modified: Wed,14 Dec 2011 15:50:59 GMT
ETag: A023EF02BD589BC472A2D6774EAE3C58
Transfer-Encoding:
Content-Length: 63240192
Accept-Ranges: bytes
Server: Brisket/1.0.1
Date: Wed,14 Dec 2011 16:11:25 GMT
Content-Range: bytes 1073152-64313343/64657027
공백 Transfer-Encoding 헤더는 HTTP 통신이 캡처 된 방식 또는이 헤더에 대해 빈 값을 생성하는 실제 HTTP 서버가 있습니까? – swl10
첫 번째 경우 서버가 64657027 바이트의 콘텐츠를 반환하는 것처럼 보입니다. 그래서 무슨 일이 일어나고 있는지 - 고객이 단지 그 내용을 버리고 그 후에 부품에 대한 범위 요청을 실제로 내리고 있습니까? 또는 클라이언트의 메시지에서 무언가가 그렇게하지 않는다고 말하면 서버가 아무런 내용도 반환하지 않습니다. 그렇다면 무엇입니까? – Morrie
@Morrie - 서버 자체가 범위 요구를 지원한다는 것을 알고 서버가 "Accept-Ranges : bytes"헤더를 통해 클라이언트에게 "Accept-Ranges : bytes"헤더를 통해 "범위 요청을 허용합니다."라고 알려주지 만 리소스의 콘텐츠 길이를 보냅니다. 클라이언트는 상한으로 범위 요청을 할 수 있습니다. 클라이언트 메시지의 아무 것도 내가 알 수있는 한 이렇게 말합니다. 서버는 "여기는 전체 리소스입니다"또는 "범위 요청을받습니다"라고 응답 할 수 있습니다 - 다시 'Accept-Ranges' 헤더가 있습니다 . 그것은 어쨌든 그것을 이해하는 것입니다. –
- 1. 요청 범위 CDI Bean에서 세션 범위 CDI 빈에 액세스하십시오.
- 2. 세션 범위 bean에서 요청 범위 동작을 에뮬레이트하는 방법은 무엇입니까?
- 3. netty HTTP 서버의 지원 범위 요청
- 4. hibernate 인터셉터에서 http 세션/요청 받기
- 5. 최대 절전 모드 HTTP 요청 간의 세션
- 6. JSF 요청 범위 양식
- 7. 도달 범위 샘플 코드
- 8. Spring 요청 범위 bean을 정의
- 9. ViewParam 및 세션 범위 콩
- 10. Tropo의 HTTP 요청 확인
- 11. Autofac 세션 범위
- 12. JSTL을 사용하여 세션/요청 범위 값을 검색 할 수 없습니다.
- 13. HTTP 요청 개체 및 로컬 요청 처리
- 14. HTTP 요청 응답 디버깅
- 15. HTTP 요청
- 16. html5 세션 저장 범위
- 17. 은 세션 범위
- 18. .Net 세션 범위 변수?
- 19. JSF에서 요청 범위
- 20. 컨트롤러의 요청 범위 속성
- 21. HTTP POST 요청 안드로이드
- 22. 여러 사이트 간의 HTTP 세션
- 23. 보내기 HTTP 요청 (인증 요청)
- 24. 손실 세션 객체, 나 httpPost도가 null 것으로 HTTP 요청
- 25. Rails와 관련된 HTTP 요청, 세션 키 및 권한 부여
- 26. jspery를 사용하여 jsp 페이지에서 http 세션 요청 매개 변수를 허용합니다.
- 27. Android 미디어 플레이어가 HTTP 요청 헤더에 세션 ID를 제공합니까?
- 28. CFStream을 통한 HTTP 요청
- 29. HTTP 범위 헤더
- 30. ruby net :: HTTP 요청 SOAP 요청 문제
몇 달 전 새로운 버전의 HTTP/1.1 표준이 게시되었습니다. 그것은 범위 요청을위한 특별한 RFC를 가지고 있습니다. 이것은 많은 항목에 대한 예제를 포함하여 이전 스펙보다 훨씬 읽기 쉽습니다 : https://tools.ietf.org/html/rfc7233 – Thirler