11.07.2015 Views

Network Working Group R. Fielding Request for Comments: 2616 ...

Network Working Group R. Fielding Request for Comments: 2616 ...

Network Working Group R. Fielding Request for Comments: 2616 ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

RFC <strong>2616</strong> HTTP/1.1 June 1999If none of the entity tags match, then the server MAY per<strong>for</strong>m therequested method as if the If-None-Match header field did not exist,but MUST also ignore any If-Modified-Since header field(s) in therequest. That is, if no entity tags match, then the server MUST NOTreturn a 304 (Not Modified) response.If the request would, without the If-None-Match header field, resultin anything other than a 2xx or 304 status, then the If-None-Matchheader MUST be ignored. (See section 13.3.4 <strong>for</strong> a discussion ofserver behavior when both If-Modified-Since and If-None-Match appearin the same request.)The meaning of "If-None-Match: *" is that the method MUST NOT beper<strong>for</strong>med if the representation selected by the origin server (or bya cache, possibly using the Vary mechanism, see section 14.44)exists, and SHOULD be per<strong>for</strong>med if the representation does not exist.This feature is intended to be useful in preventing races between PUToperations.Examples:If-None-Match: "xyzzy"If-None-Match: W/"xyzzy"If-None-Match: "xyzzy", "r2d2xxxx", "c3piozzzz"If-None-Match: W/"xyzzy", W/"r2d2xxxx", W/"c3piozzzz"If-None-Match: *The result of a request having both an If-None-Match header field andeither an If-Match or an If-Unmodified-Since header fields isundefined by this specification.14.27 If-RangeIf a client has a partial copy of an entity in its cache, and wishesto have an up-to-date copy of the entire entity in its cache, itcould use the Range request-header with a conditional GET (usingeither or both of If-Unmodified-Since and If-Match.) However, if thecondition fails because the entity has been modified, the clientwould then have to make a second request to obtain the entire currententity-body.The If-Range header allows a client to "short-circuit" the secondrequest. In<strong>for</strong>mally, its meaning is `if the entity is unchanged, sendme the part(s) that I am missing; otherwise, send me the entire newentity'.If-Range = "If-Range" ":" ( entity-tag | HTTP-date )

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!