mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 20:30:23 +00:00
REST: Ignore If...Since if If...Match header exists
The If-Modified-Since and If-Unmodified-Since headers are only used when If-None-Match or If-Match were not found, respectively. The latter are preferred by the standard and the former is only there for compatibility with older clients.
This commit is contained in:
parent
6d63557235
commit
493794145e
1 changed files with 2 additions and 2 deletions
|
@ -688,7 +688,7 @@ if_match(Req, State, EtagsList) ->
|
|||
precondition_failed(Req2, State2);
|
||||
{Etag, Req2, State2} ->
|
||||
case lists:member(Etag, EtagsList) of
|
||||
true -> if_unmodified_since_exists(Req2, State2);
|
||||
true -> if_none_match_exists(Req2, State2);
|
||||
%% Etag may be `undefined' which cannot be a member.
|
||||
false -> precondition_failed(Req2, State2)
|
||||
end
|
||||
|
@ -743,7 +743,7 @@ if_none_match(Req, State, EtagsList) ->
|
|||
Etag ->
|
||||
case is_weak_match(Etag, EtagsList) of
|
||||
true -> precondition_is_head_get(Req2, State2);
|
||||
false -> if_modified_since_exists(Req2, State2)
|
||||
false -> method(Req2, State2)
|
||||
end
|
||||
end
|
||||
catch Class:Reason ->
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue