[2] Range:
が指定された要求を、範囲要求といいます。
範囲要求を使うと資源の一部分のみをバイト単位で指定して受信できます。
[3] 範囲要求への対応は必須ではありません >>1。範囲要求を受信した時、
これに対応していない場合は、通常の GET
要求として処理して構いません >>1。
[84] HTTP鯖の処理全体における位置付けは HTTP鯖の項を、 キャッシュにおける取り扱い全体はキャッシュ項目の項を、 実現値操作との関係は実現値操作の項を参照してください。
[42] 鯖は、範囲要求を次のように処理しなければなりません。
Range:
ヘッダーに対応しないなら、
ここで終わり通常の方法で処理します >>14。Range:
ヘッダーがなければ、
範囲要求ではないので、ここで終わり通常の方法で処理します。GET
以外なら、
Range:
ヘッダーは無視します >>14。
ここで終わり通常の方法で処理します。Range:
ヘッダーの範囲単位が対応しないものなら、Range:
ヘッダーの値を範囲単位ごとの構文に従い解釈します。Range:
ヘッダーや、多数の昇順でない小さな範囲を指定した Range:
ヘッダーを無視したり、拒絶したりして構いません >>14。416
応答を返してここで終わります >>14。206
応答を送信します >>14。multipart/byteranges
を使うか判断します。multipart/byteranges
を使用する時は、multipart/byteranges
を
payload に含めます >>61。[7] クライアントは、
HTTP接続が閉じられるのが早すぎた場合 (不完全な 200
応答)や、
範囲要求によって応答を得た場合 (206
応答) に、
同じ強い検証子を持っていればそれらを安全に組み合わせることができます >>5, >>81。
200
応答と 206
応答) を集めます。200
応答なら、206
応答の場合)、206
とします。 >>5multipart/byteranges
実体とします。 >>5Content-Length:
は適当に設定し、
Content-Range:
, Transfer-Encoding:
は削除します。206
とします。 >>5Content-Range:
ヘッダーを適切に設定します。 >>5Content-Type:
ヘッダーと
Content-Length:
ヘッダーを適切に設定し、
Transfer-Encoding:
ヘッダーは削除します。range
#✎[87] 実現値操作 range
は、
結果が範囲選択の結果としての部分内容であることを表します >>86。
[92] 範囲選択とそれ以外の恒等でない実現値操作が適用された時は、
IM:
にその適用順序を明記しなければなりません >>91。
[93] 実現値操作として range
のみが適用された時は、
IM:
ヘッダーを省略するべきです。
通常は 226
ではなく 206
を使います。 >>91
[94] IM:
に range
が含まれる時は、 Content-Range:
または
Content-Type: multipart/byteranges
が含まれなければなりません >>91。
[95] A-IM:
に range
は1回しか指定できないと思われますが、明記されていません。
[96] 範囲要求に A-IM:
が含まれるとき
range
を指定しなければならないとは明記されていません。
[97] キャッシュにおける処理については、226
を参照。
[99] multipart/byteranges
に関わる処理 >>98
は multipart/byteranges
を参照。
[6] http - Paging in a Rest Collection - Stack Overflow ( ( 版)) <http://stackoverflow.com/questions/924472/paging-in-a-rest-collection>
[100] draft-combs-http-indeterminate-range-00 - HTTP/1.1: Range Responses of Indeterminate Length ( 版) <http://tools.ietf.org/html/draft-combs-http-indeterminate-range-00>
[101] draft-combs-http-indeterminate-range-01 - HTTP/1.1: Range Responses of Indeterminate Length ( 版) <https://tools.ietf.org/html/draft-combs-http-indeterminate-range-01>
[102] IRC logs: freenode / #whatwg / 20150731 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20150731>
[103] apacheはContent-LengthレスポンスヘッダがないとRangeリクエストが有効にならない - うまいぼうぶろぐ () <http://hogem.hatenablog.com/entry/20100724/1280074122>
[104] Rewrite HTTP cache integration (mnot著, ) <https://github.com/whatwg/fetch/commit/cbca2c2f3a37084e336e14348de683f8ffa0fed9>
[105] Specify identity encoding for range requests (jakearchibald著, ) <https://github.com/whatwg/fetch/commit/2f3d04d3713f6cd0f89d491217175b55911927be>
[106] Some servers seem to expect 'Accept-Encoding : identity' to serve Range requests · Issue #747 · whatwg/fetch () <https://github.com/whatwg/fetch/issues/747>
Range:
ヘッダーが複数指定された時の動作は規定されていません。