Ignore:
Timestamp:
23/01/13 11:09:13 (8 years ago)
Author:
fielding@…
Message:

(editorial) move discussion of single or multiple parts inside the 206 definition

File:
1 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p5-range.xml

    r2151 r2152  
    480480
    481481<section title="Responses to a Range Request" anchor="range.response">
    482 <section title="Response to a Single and Multiple Ranges Request">
     482
     483<section title="206 Partial Content" anchor="status.206">
     484  <iref primary="true" item="206 Partial Content (status code)" x:for-anchor=""/>
     485  <x:anchor-alias value="206"/>
     486  <x:anchor-alias value="206 (Partial Content)"/>
     487<t>
     488   The <x:dfn>206 (Partial Content)</x:dfn> status code indicates that the
     489   server has fulfilled the partial GET request for the resource.
     490   The request &MUST; have included a <x:ref>Range</x:ref> header field
     491   (<xref target="header.range"/>) indicating the desired range, and &MAY; have
     492   included an <x:ref>If-Range</x:ref> header field
     493   (<xref target="header.if-range"/>) to make the request conditional.
     494</t>
    483495<t>
    484496   When an HTTP message includes the content of a single range (for
     
    521533   request.
    522534</t>
    523 </section>
    524 
    525 <section title="206 Partial Content" anchor="status.206">
    526   <iref primary="true" item="206 Partial Content (status code)" x:for-anchor=""/>
    527   <x:anchor-alias value="206"/>
    528   <x:anchor-alias value="206 (Partial Content)"/>
    529 <t>
    530    The <x:dfn>206 (Partial Content)</x:dfn> status code indicates that the
    531    server has fulfilled the partial GET request for the resource.
    532    The request &MUST; have included a <x:ref>Range</x:ref> header field
    533    (<xref target="header.range"/>) indicating the desired range, and &MAY; have
    534    included an <x:ref>If-Range</x:ref> header field
    535    (<xref target="header.if-range"/>) to make the request conditional.
    536 </t>
    537535<t>
    538536   When a 206 response is generated, the sender &MUST; generate the following
     
    541539    <t>
    542540        Either a <x:ref>Content-Range</x:ref> header field
    543         (<xref target="header.content-range"/>) indicating
    544         the range included with this response, or a multipart/byteranges
    545         <x:ref>Content-Type</x:ref> including Content-Range fields for each
    546         part. If a <x:ref>Content-Length</x:ref> header field is present in the
    547         response, its value &MUST; match the actual number of octets
    548         transmitted in the message body.
     541        (<xref target="header.content-range"/>) indicating the single range
     542        included with this response, or a multipart/byteranges
     543        <x:ref>Content-Type</x:ref> indicating that multiple ranges are
     544        enclosed as multipart body-parts.
    549545    </t>
    550546    <t>
    551         Date
     547        <x:ref>Date</x:ref>
    552548    </t>
    553549    <t>
     
    571567   freshness for 206 responses.
    572568</t>
    573 </section>
    574 
    575 <section title="416 Range Not Satisfiable" anchor="status.416">
    576   <iref primary="true" item="416 Range Not Satisfiable (status code)" x:for-anchor=""/>
    577   <x:anchor-alias value="416 (Range Not Satisfiable)"/>
    578 <t>
    579    The <x:dfn>416 (Range Not Satisfiable)</x:dfn> status code
    580    indicates that none of the ranges-specifier values in the request's
    581    <x:ref>Range</x:ref> header field (<xref target="header.range"/>)
    582    overlap the current
    583    extent of the selected resource and the request did not include an
    584    <x:ref>If-Range</x:ref> header field (<xref target="header.if-range"/>).
    585    (For byte-ranges, this means that the first-byte-pos of all of the
    586    byte-range-spec values were greater than the current length of the selected
    587    representation.)
    588 </t>
    589 <t>
    590    When this status code is sent in response to a byte-range request, the
    591    sender &SHOULD; generate a <x:ref>Content-Range</x:ref> header field
    592    specifying the current length of the selected representation
    593    (see <xref target="header.content-range"/>).
    594 </t>
    595 <figure>
    596 <preamble>For example:</preamble>
    597 <artwork type="message/http; msgtype=&#34;response&#34;" x:indent-with="  ">
    598 HTTP/1.1 416 Range Not Satisfiable
    599 Date: Mon, 20 Jan 2012 15:41:54 GMT
    600 Content-Range: bytes */47022
    601 Content-Type: image/gif
    602 </artwork></figure>
    603 <x:note>
    604   <t>
    605     &Note; Clients cannot depend on servers to send a <x:ref>416 (Range Not
    606     Satisfiable)</x:ref> response instead of a <x:ref>200 (OK)</x:ref>
    607     response for an unsatisfiable <x:ref>Range</x:ref> header field, since not
    608     all servers implement this header field.
    609   </t>
    610 </x:note>
    611569</section>
    612570
     
    788746   field.
    789747</t>
     748</section>
     749
     750<section title="416 Range Not Satisfiable" anchor="status.416">
     751  <iref primary="true" item="416 Range Not Satisfiable (status code)" x:for-anchor=""/>
     752  <x:anchor-alias value="416 (Range Not Satisfiable)"/>
     753<t>
     754   The <x:dfn>416 (Range Not Satisfiable)</x:dfn> status code
     755   indicates that none of the ranges-specifier values in the request's
     756   <x:ref>Range</x:ref> header field (<xref target="header.range"/>)
     757   overlap the current
     758   extent of the selected resource and the request did not include an
     759   <x:ref>If-Range</x:ref> header field (<xref target="header.if-range"/>).
     760   (For byte-ranges, this means that the first-byte-pos of all of the
     761   byte-range-spec values were greater than the current length of the selected
     762   representation.)
     763</t>
     764<t>
     765   When this status code is sent in response to a byte-range request, the
     766   sender &SHOULD; generate a <x:ref>Content-Range</x:ref> header field
     767   specifying the current length of the selected representation
     768   (see <xref target="header.content-range"/>).
     769</t>
     770<figure>
     771<preamble>For example:</preamble>
     772<artwork type="message/http; msgtype=&#34;response&#34;" x:indent-with="  ">
     773HTTP/1.1 416 Range Not Satisfiable
     774Date: Mon, 20 Jan 2012 15:41:54 GMT
     775Content-Range: bytes */47022
     776Content-Type: image/gif
     777</artwork></figure>
     778<x:note>
     779  <t>
     780    &Note; Clients cannot depend on servers to send a <x:ref>416 (Range Not
     781    Satisfiable)</x:ref> response instead of a <x:ref>200 (OK)</x:ref>
     782    response for an unsatisfiable <x:ref>Range</x:ref> header field, since not
     783    all servers implement this header field.
     784  </t>
     785</x:note>
    790786</section>
    791787</section>
     
    978974    <x:defines>Content-Location</x:defines>
    979975    <x:defines>Content-Type</x:defines>
     976    <x:defines>Date</x:defines>
    980977    <x:defines>Location</x:defines>
    981978    <x:defines>Vary</x:defines>
Note: See TracChangeset for help on using the changeset viewer.