- From: Alex Rousskov <rousskov@measurement-factory.com>
- Date: Tue, 24 Sep 2002 18:24:52 -0600 (MDT)
- To: Jeffrey Mogul <Jeff.Mogul@hp.com>
- cc: ietf-http-wg@w3.org
On Tue, 24 Sep 2002, Jeffrey Mogul wrote: > Anyway, I can't think of any reasonable interpretation for this > example: > > GET /foo.html HTTP/1.1 > Host: whatever.com > If-Range: "a" > Range: bytes=100-200 > If-Match: "b" What, in your opinion, should an origin server return when receiving the above request (we can assume that entity has an ETag of "c")? It looks like returning 200/206 would violate If-Match while returning anything else would violate If-Range SHOULD requirements. Should the server return "Bad Request"? Or is this simply an "undefined behavior" case? > It *might* make sense to do: > > GET /foo.html HTTP/1.1 > Host: whatever.com > If-Range: "a" > Range: bytes=100-200 > If-None-Match: "b" > > which means > if the current entity tag is "b" then send 304 OK. It looks to me that you are saying that the presence of If-Range headers does not limit response codes that can be returned. In other words, the existing SHOULD "definition" of If-Range is valid only when no other If-* headers are present: If the entity tag given in the If-Range header matches the current entity tag for the entity, then the server SHOULD provide the specified sub-range of the entity using a 206 (Partial content) response. If the entity tag does not match, then the server SHOULD return the entire entity using a 200 (OK) response. Here is what we currently do to test the proxy-related MUST in question: generate all possible combinations of If-* headers that do not violate other MUSTs, make on of the If- header mismatch LMT/tag of the cached entity, and then make sure that the proxy under test does not return any cached information (including headers). The proxy can return any status codes. Do you think that's the best strategy of verifying the MUST in question? > P.S.: Alex, I owe you answers for several previous questions you've > posted. I'm trying to catch up on my email. Please feel free to ignore any that make little sense or are not important. You certainly do not owe me any explanations! Thanks a lot for a detailed explanation, Alex. -- | HTTP performance - Web Polygraph benchmark www.measurement-factory.com | HTTP compliance+ - Co-Advisor test suite | all of the above - PolyBox appliance
Received on Tuesday, 24 September 2002 20:24:55 UTC