Просмотр исходного кода

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.
Loïc Hoguin 9 лет назад
Родитель
Сommit
493794145e
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      src/cowboy_rest.erl

+ 2 - 2
src/cowboy_rest.erl

@@ -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 ->