- From: Amos Jeffries <squid3@treenet.co.nz>
- Date: Tue, 17 Jan 2012 11:48:54 +1300
- To: <ietf-http-wg@w3.org>
On 17.01.2012 05:38, Zhong Yu wrote: > Let me clarify my question with an example. > > The representation remains unchanged between requests; the ETag > remains "v0". The length of the representation body is 1000 bytes. > Now > consider this request > > GET /resource HTTP/1.1 > If-None-Match: "v0" > Range: bytes=2000-3000 > > of course, this is a bad request. The question is, which status code > should be returned? 304 or 416? The two sections I quoted seem to > yield to each other. IMHO the MUST about returning other errors when they occur is most appropriate " If the request would, without the If-None-Match header field, result in anything other than a 2xx or 304 status code, then the If-None- Match header field MUST be ignored. " ASUI the intent is for 2xx / 3xx response from If-* is an optimisation feature and only comes into effect if all the other features in the headers are valid and would produce a 2xx response. This is highlighted by the MAY clause at the very beginning of the If-None-Match description which says it can be ignored entirely by any part of the system. AYJ
Received on Monday, 16 January 2012 22:49:34 UTC