aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cowboy_clock.erl8
-rw-r--r--src/cowboy_rest.erl8
2 files changed, 10 insertions, 6 deletions
diff --git a/src/cowboy_clock.erl b/src/cowboy_clock.erl
index 5e2bf44..f851211 100644
--- a/src/cowboy_clock.erl
+++ b/src/cowboy_clock.erl
@@ -25,6 +25,7 @@
-export([start_link/0]).
-export([stop/0]).
-export([rfc1123/0]).
+-export([rfc1123/1]).
-export([rfc2109/1]).
%% gen_server.
@@ -61,12 +62,15 @@ stop() ->
gen_server:call(?SERVER, stop).
%% @doc Return the current date and time formatted according to RFC-1123.
-%%
-%% This format is used in the <em>date</em> header sent with HTTP responses.
-spec rfc1123() -> binary().
rfc1123() ->
ets:lookup_element(?TABLE, rfc1123, 2).
+%% @doc Return the given date and time formatted according to RFC-1123.
+-spec rfc1123(calendar:datetime()) -> binary().
+rfc1123(DateTime) ->
+ update_rfc1123(<<>>, undefined, DateTime).
+
%% @doc Return the current date and time formatted according to RFC-2109.
%%
%% This format is used in the <em>set-cookie</em> header sent with
diff --git a/src/cowboy_rest.erl b/src/cowboy_rest.erl
index 721acb9..f7bcfb8 100644
--- a/src/cowboy_rest.erl
+++ b/src/cowboy_rest.erl
@@ -778,9 +778,9 @@ set_resp_body(Req, State=#state{handler=Handler, handler_state=HandlerState,
LastModified when is_atom(LastModified) ->
Req3;
LastModified ->
- LastModifiedStr = httpd_util:rfc1123_date(LastModified),
+ LastModifiedBin = cowboy_clock:rfc1123(LastModified),
cowboy_req:set_resp_header(
- <<"last-modified">>, LastModifiedStr, Req3)
+ <<"last-modified">>, LastModifiedBin, Req3)
end,
{Req5, State4} = set_resp_expires(Req4, State3),
case call(Req5, State4, Fun) of
@@ -831,9 +831,9 @@ set_resp_expires(Req, State) ->
Expires when is_atom(Expires) ->
{Req2, State2};
Expires ->
- ExpiresStr = httpd_util:rfc1123_date(Expires),
+ ExpiresBin = cowboy_clock:rfc1123(Expires),
Req3 = cowboy_req:set_resp_header(
- <<"expires">>, ExpiresStr, Req2),
+ <<"expires">>, ExpiresBin, Req2),
{Req3, State2}
end.