W3C home > Mailing lists > Public > ietf-http-wg@w3.org > July to September 2014

Re: 303 for paging; was Re: 2NN Contents Of Related (303 Shortcut)

From: Matthew Kerwin <matthew@kerwin.net.au>
Date: Tue, 9 Sep 2014 09:44:18 +1000
Message-ID: <CACweHNAjN_4xoKxXYCP_SgFC59bziz7vzFpKgKro+LWUf82caw@mail.gmail.com>
To: Sandro Hawke <sandro@w3.org>
Cc: Julian Reschke <julian.reschke@gmx.de>, Amos Jeffries <squid3@treenet.co.nz>, James Snell <jasnell@gmail.com>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
On 9 September 2014 00:48, Sandro Hawke <sandro@w3.org> wrote:
> Am I reading it correct to imply that a client MAY treat any 2xx
> code (modulo caching) as a 200 simply by saying it "doesn't
> implement" the given 2xx?

That depends how the authors authored 2xx. AFAIK it's perfectly fine to
say: if you explicitly acknowledge support, you can't back out without an
error. But, yes, the implication is that anyone can (always or arbitrarily)
not support your code, and if that's a problem you have to account for it
in your spec.

> I suppose it would work as 5NN, then.    Essentially, "I can't
> provide the content, since it's too large, but I am going to give
> you the first page of it."

Depends if the underlying message is "I can't handle the big document" or
"You don't really want this big document".

I know of browsers (possibly historical) that handle all 5xx codes by
drawing a big red X symbol and writing our their own description of the
error, completely ignoring the response body, because apparently server
authors and site maintainers don't know how to talk to "real" computer
users. If you're happy for that as a possible fallback behaviour ...

To me it seems quite plain that this is a 3xx response; essentially the
server is second-guessing the client's request and effectively saying "Hey,
you said you want This, but you really want That, so I'll give That to you
and by the way next time you can get it There".

My suggestion is: use a new preference† in the request, for the server to
use as a trigger to respond with 303[Content-Location] + chapter body. Note
that just because Content-Location isn't defined for anything but 2xx,
doesn't meant it can't *become* defined for them.

This is completely aside from your particular issue, though, which is more
one of site architecture and the definition of resources.

† Either a new preference like "Prefer:contents-of-other", or a parameter
to an existing one, like: "Prefer:return=representation;include-redirect".
I'd defer to James on this.

  Matthew Kerwin
Received on Monday, 8 September 2014 23:44:46 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 30 March 2016 09:57:10 UTC