From 5e05fe8e7877ffd6bc473b77b8ca0a12ad26bd67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Thu, 14 Mar 2024 16:23:56 +0100 Subject: Cowboy 2.12, Cowlib 2.13, Gun 2.1 --- .../manual/cowboy_req.set_resp_cookie/index.html | 257 +++++++++++++++++++++ 1 file changed, 257 insertions(+) create mode 100644 docs/en/cowboy/2.12/manual/cowboy_req.set_resp_cookie/index.html (limited to 'docs/en/cowboy/2.12/manual/cowboy_req.set_resp_cookie/index.html') diff --git a/docs/en/cowboy/2.12/manual/cowboy_req.set_resp_cookie/index.html b/docs/en/cowboy/2.12/manual/cowboy_req.set_resp_cookie/index.html new file mode 100644 index 00000000..04a613c0 --- /dev/null +++ b/docs/en/cowboy/2.12/manual/cowboy_req.set_resp_cookie/index.html @@ -0,0 +1,257 @@ + + + + + + + + + + Nine Nines: cowboy_req:set_resp_cookie(3) + + + + + + + + + + + + + + + +
+
+
+
+ +

cowboy_req:set_resp_cookie(3)

+ +

Name

+

cowboy_req:set_resp_cookie - Set a cookie

+

Description

+
+
set_resp_cookie(Name, Value, Req :: cowboy_req:req())
+    -> set_resp_cookie(Name, Value, Req, #{})
+
+set_resp_cookie(Name, Value, Req :: cowboy_req:req(), Opts)
+    -> Req
+
+Name  :: binary()                  %% case sensitive
+Value :: iodata()                  %% case sensitive
+Opts  :: cow_cookie:cookie_opts()
+
+

Set a cookie to be sent with the response.

+

Note that cookie names are case sensitive.

+

Arguments

+
Name
+

Cookie name.

+
+
Value
+

Cookie value.

+
+
Req
+

The Req object.

+
+
Opts
+

Cookie options.

+
+
+

Return value

+

A new Req object is returned.

+

The returned Req object must be used from that point onward, otherwise the cookie will not be sent in the response.

+

Changelog

+
  • 2.0: set_resp_cookie/3 introduced as an alias to set_resp_cookie/4 with no options. +
  • +
  • 2.0: The first argument type is now binary() instead of iodata(). +
  • +
  • 1.0: Function introduced. +
  • +
+

Examples

+
Set a session cookie
+
+
SessionID = base64:encode(crypto:strong_rand_bytes(32)),
+Req = cowboy_req:set_resp_cookie(<<"sessionid">>, SessionID, Req0).
+
+
Set a cookie with an expiration time
+
+
Req = cowboy_req:set_resp_cookie(<<"lang">>, <<"fr-FR">>,
+    Req0, #{max_age => 3600}).
+
+
Delete a cookie
+
+
Req = cowboy_req:set_resp_cookie(<<"sessionid">>, <<>>,
+    Req0, #{max_age => 0}).
+
+
Set a cookie for a specific domain and path
+
+
Req = cowboy_req:set_resp_cookie(<<"inaccount">>, <<"1">>,
+    Req0, #{domain => "my.example.org", path => "/account"}).
+
+
Restrict a cookie to HTTPS
+
+
SessionID = base64:encode(crypto:strong_rand_bytes(32)),
+Req = cowboy_req:set_resp_cookie(<<"sessionid">>, SessionID,
+    Req0, #{secure => true}).
+
+
Restrict a cookie to HTTP
+
+
SessionID = base64:encode(crypto:strong_rand_bytes(32)),
+Req = cowboy_req:set_resp_cookie(<<"sessionid">>, SessionID,
+    Req0, #{http_only => true}).
+
+

See also

+

cowboy_req(3), cowboy_req:set_resp_header(3), cowboy_req:set_resp_headers(3), cowboy_req:reply(3), cowboy_req:stream_reply(3)

+ + + + + + +
+ +
+ + +

+ Cowboy + 2.12 + Function Reference + +

+ + + +

Navigation

+ +

Version select

+ + +

Like my work? Donate!

+

Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:

+
+ + + + + + + + + +

Recurring payment options are also available via GitHub Sponsors. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.

+ + + +
+
+
+
+ + + + + + + + + -- cgit v1.2.3