2011-09-18 3 views
2

파일을 여러 개의 청크로 나누고 여러 HTTP 요청을 사용하여 파일을 전송하는 기존 Silverlight 파일 업 로더에서 작업하고 있습니다.POST 메서드를 사용하여 청크로 파일을 보낼 때 HTTP Content-Range 헤더를 사용하고 있습니까?

현재는 쿼리 문자열에 대한 시작 및 총 바이트 정보를 전송하지만 학습 연습으로 좀 더 표준 기반 방식을 사용하고 싶습니다.

콘텐츠를 제공하는 끝점을 구현할 때 이전에 HTTP 콘텐츠 범위 헤더를 사용했습니다. 이 헤더는 클라이언트의 컨텐츠를 서버에 게시 할 때도 적절합니까?

답변

1

예.

RFC 2616 (HTTP 1.1), Section 14 진술로 시작 :

Entity-Header 필드, 모두 보낸 사람과받는 사람의 경우

은을 참조하십시오 클라이언트 나 서버, 전송하고 누가 실체를받는 사람에 따라.

Content-Range 헤더를 정의하는 Section 14.16은 요청 또는 응답에 대한 사용을 제한하는 언어를 포함하지 않는 것으로 보입니다.

+0

또한 파일 조각을 청크로 업로드 할 때 범위 헤더를 사용할 수 있습니까? 나는 이것에 대해서도 rfc에 아무것도 볼 수 없다. – Toad

+0

그건 원래의 질문에 관한 것이었다. 나의 결론은 적절하다는 것이지 만 서버가 지원하는지 확인해야 할 것이다. 서버 코드를 작성하는 경우 문제가되지 않지만 많은 서버가 청크 업로드를 이러한 방식으로 지원할 것 같지는 않습니다. –

+0

'content-range'에 대한 질문입니다. 나는 'Range'를 언급하고있다. 내가 직접 만들고있는 서버와 나는 어떤 종류의 청크 업로드 메커니즘이 필요하다. 그래서 'range'가 'content-range'로 잘 작동하는지 궁금합니다. spec에서 '범위'는 요청을 나타내는 것으로 보이며 'content-range'는 응답을 나타냅니다. – Toad

1

아마 적어도 2014 년까지 (원래 답변은 2011 년부터).

업데이트 된 HTTP 1.1 사양, rfc7231 (4.3.3)는 유효한 POST 응답에 대해 다음과 같이 말한다 :

서버가 POST 요청 처리 결과에 따라서 적절한 상태 코드를 선택하여 응답 의미를 나타내는 원산지; 이 사양으로 정의 된 거의 모든 상태 코드가 POST (부분 콘텐츠), 304 (수정되지 않음) 및 416 (범위가 만족 됨) 인 이 인 경우)에 대한 응답으로 수신 될 수 있습니다.

이 언어가 업데이트 된 사양에 명시 적으로 추가되었다고 가정 할 때 저자는 Content-Range 헤더를 POST 메서드와 함께 사용해야한다고 생각합니다.

관련 문제