[3] MIME型 multipart/byteranges
は、範囲要求に対して複数の範囲のデータを返す時に使う構文です。
[9] multipart/byteranges
の各本体部分は、
範囲要求の結果として得られたデータの各部分を表しています。
[4] multipart/*
の共通の構文に従っています。
[11] 前書きとして、最初の境界文字列の前にいくつか CRLF
を含めることができます >>10。 MIME の仕様によると CRLF
以外にも境界文字列以外の任意のASCII文字列を入れることができます。
[8] 範囲要求における要件については、範囲要求の項を参照してください。
[16] 範囲単位は各本体部分の Content-Range:
ヘッダーで指定します。MIME型の名前は byteranges
ですが、 bytes
以外の範囲単位も使えます >>10。
[18] 他の multipart/*
とは違って、実体本体には元のデータの一部分のみが含まれます。
Content-Type:
のMIME型の仕様で決められた形式を満たすとは限りません。
[19] 範囲を選択した後に実現値操作が適用されている場合は、更に圧縮などが行われているかもしれません >>20。 その場合はすべての本体部分で同じ実現値操作が適用されなければなりません >>20。
[6] 内容転送符号化としては、 (multipart/*
全体の制限により) 7bit
、8bit
、
binary
だけが認められています >>1。
[17] 仕様上明記はされていませんが、本体部分に CTE は使えないものと思われます。 MIME では意味がありますが、 HTTP では意味がありません。 実装も対応しているとは思えません。
[13] 初期の実装は multipart/x-byteranges
>>14, >>15
に(のみ)対応しているかもしれません。 multipart/x-byteranges
は multipart/byteranges
とほぼ同じですが、違いもあります。 >>10
When an HTTP
206 (Partial Content) responsemessage includes the content of multiple ranges (for example,a response to a request for multiple non-overlapping ranges), these are transmitted as a multipartMIME messagemessage-body. Themultipartmedia type for this purpose is called "multipart/byteranges".
HTTP 206
(部分内容) 応答メッセージは複数の範囲の内容を含むとき
(例えば複数の重なり合わない範囲についての要求に対する応答のとき)、
各範囲は多部分 message-body
で転送します。この目的の媒体型を multipart/byteranges
と呼びます。
The multipart/byteranges media type includes two or more parts, each with its own Content-Type and Content-Range fields.
The parts are separated using a MIME boundary parameter.The required boundary parameter specifies the boundary string used to separate each body-part.
multipart/byteranges
媒体型は2つ以上の部分を含み、
それぞれがそれぞれの Content-Type
欄と
Content-Range
欄を持ちます。
必須の boundary
引数は、各本体部分を分離するために使う境界文字列を指定します。
- Media Type name
- multipart
- Media subtype name
- byteranges
- Required parameters
- boundary
- Optional parameters
- none
- Encoding considerations
- only "7bit", "8bit", or "binary" are permitted
- Security considerations
- none
For example:
HTTP/1.1 206 PartialcontentContent Date: Wed, 15 Nov 1995 06:25:24 GMTLast-modified: Wed, 15 Nov 1995 04:58:08 GMTLast-Modified: Wed, 15 Nov 1995 04:58:08 GMT Content-type: multipart/byteranges; boundary=THIS_STRING_SEPARATES --THIS_STRING_SEPARATES Content-type: application/pdf Content-range: bytes 500-999/8000 ...the first range... --THIS_STRING_SEPARATES Content-type: application/pdf Content-range: bytes 7000-7999/8000 ...the second range --THIS_STRING_SEPARATES--
Notes:
- 1) Additional CRLFs may precede the first boundary string in the entity.
- 2) Although RFC 2046 [40] permits the boundary string to be quoted, some existing implementations handle a quoted boundary string incorrectly.
- 3) A number of browsers and servers were coded to an early draft of the byteranges specification to use a media type of multipart/x-byteranges, which is almost, but not quite compatible with the version documented in HTTP/1.1.
注意:
multipart/x-byteranges
を使うように符号化されていました。
この媒体型は HTTP/1.1 で文書化されている版とは完全にではありませんがほとんどは互換です。[21] Site Isolation - The Chromium Projects () <http://www.chromium.org/Home/chromium-security/site-isolation>