Re: [EXTERNAL] Re: Response for unsupported conditional request

On 05.02.2025 09:30, Kevin Marks wrote:
> ...
> What I'm getting at is that, for a http GET, the Postelian answer is to
> fall back to 200 and send the resource, rather than a draconian reading of
> the spec.
> ...

So assuming you GOT (:-) a resource with a Last-Modified date of "x". In
the meantime, the resource has changed and now has a Last-Modified date
of "y".

If the client now submits a PUT request to that resource with
"If-Unmodified-Since: x" with the intent not to overwrite changes, and
the server chooses to ignore that request header field, the changes will
(or could be) lost.

So: ignoring a conditional request header field can have bad consequences.

And yes:

- Last-Modified timestamps only have 1 sec resolution,
- a server that supports PUT really should understand that conditional
header field

The point being: it's not always safe to ignore conditional request fields.

How does WebDAV -- indeed defining a new conditional field -- handle
this for "If"
(<https://greenbytes.de/tech/webdav/rfc4918.html#HEADER_If>)? It
supports negotiation of features (see
<https://greenbytes.de/tech/webdav/rfc4918.html#HEADER_DAV>). That may
not be the best way to do this, but note that this was conceived in RFC
2518, as of Feb 1999, predating RFC 2616.

Best regards, Julian

Received on Wednesday, 5 February 2025 09:18:48 UTC