Roundup Tracker - Issues

Issue 2551386

classification
Add if-none-match header support for REST
Type: behavior Severity: normal
Components: API Versions:
process
Status: new
:
: : rouilj
Priority: :

Created on 2025-01-10 01:31 by rouilj, last changed 2025-01-10 01:38 by rouilj.

Messages
msg8251 Author: [hidden] (rouilj) Date: 2025-01-10 01:31
If-Match conditional headers are supported by the rest code.

However If-None-Match is not supported. This is shown by running redbot.org against
.../rest/data/file/1. It reports:

  An If-None-Match conditional request returned the full content unchanged.

  HTTP allows clients to make conditional requests to see if a copy that they
  hold is still valid. Since this response has an ETag, clients should be able
  to use an If-None-Match request header for validation.

  REDbot has done this and found that the resource sends the same, full response
  even though it hadn't changed, indicating that it doesn't support ETag validation.

Also etag support/if-none-match/if-match should be extracted from rest.py into
it's own module so it can be used by the http html or xml endpoints.
msg8252 Author: [hidden] (rouilj) Date: 2025-01-10 01:38
Note the xmlrpc endpoint has a different data model and doesn't deal with
documents, so an etag, if-match, if-no-match headers aren't supported.
History
Date User Action Args
2025-01-10 01:38:20rouiljsetmessages: + msg8252
2025-01-10 01:31:08rouiljcreate