Re: GET and PUT on References: New language for the spec

Judith Slein wrote:

> I guess the issue is how detailed the specification of the response entity
> should be.

Ideally, the response entity will be irrelevant; the Location: header will
suffice.  The HTTP requirement is there because there are browsers that don't
grok Location:; such browsers will instead display the HTML they get.  These
are mostly extremely *old* browsers (pre-HTTP/1.0); there may be a few that
support PUT, and a few of those may still in use, but it would be surprising.
Besides, those few certainly won't care if the response is well-formed XML or
not.  :-)

> The response to a PUT is a more difficult case.  A DAV-aware client would
> probably not have tried to do a PUT to a referential resource in the first
> place.

Mmm, I'm not sure.  I can think of a few plausible scenarios right off the
bat:

  1. The client is PUTting a new document, and has never interacted with this
     resource before.
  2. The client is PUTting an edited document; the resource was nonreferential
     before, but another client (or an admin) has changed it in the meantime.
  3. The client's developers, mindful of scenario 2, did not assume that
     referentiality was indefinitely cachable, and so built their client to
     PUT to the reference to see if it was still a reference.

> For a non-DAV client, the entity of the response should present the
> user with a choice between replacing the target resource and replacing the
> reference.

And that's exactly what a compliant HTTP/1.1 client will do in response to a
302:

     If the 302 status code is received in response to a request other
     than GET or HEAD, the user agent MUST NOT automatically redirect the
     request unless it can be confirmed by the user, since this might
     change the conditions under which the request was issued.

--
/====================================================================\
|John (Francis) Stracke    |My opinions are my own.|S/MIME supported |
|Software Retrophrenologist|=========================================|
|Netscape Comm. Corp.      | Cogito ergo Spud.  (I think, therefore  |
|francis@netscape.com      |  I yam.)                                |
\====================================================================/
New area code for work number: 650

Received on Tuesday, 7 July 1998 14:34:55 UTC