aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/manual/cowboy_req.parse_cookies.asciidoc
blob: 25461c06b2e37ab0a1fa856bd3e1b06fde74c893 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
= cowboy_req:parse_cookies(3)

== Name

cowboy_req:parse_cookies - Parse cookie headers

== Description

[source,erlang]
----
parse_cookies(Req) -> [{Name, Value}]

Name  :: binary() %% case sensitive
Value :: binary() %% case sensitive
----

Parse cookie headers.

Alias for link:man:cowboy_req:parse_header(3)[cowboy_req:parse_header(<<"cookie">>, Req)].

When the cookie header is missing, `[]` is returned.

While an empty cookie header is not valid, some clients do
send it. Cowboy will in this case also return `[]`.

== Arguments

Req::

The Req object.

== Return value

The cookies are returned as a list of key/values. Keys and
values are case sensitive binary strings.

== Changelog

* *2.0*: Only the parsed header value is returned, it is no longer wrapped in a tuple.
* *2.0*: Function introduced. Replaces `cookie/2,3` and `cookies/1`.

== Examples

.Look for a specific cookie
[source,erlang]
----
Cookies = cowboy_req:parse_cookies(Req),
{_, Token} = lists:keyfind(<<"token">>, 1, Cookies).
----

== See also

link:man:cowboy_req(3)[cowboy_req(3)],
link:man:cowboy_req:parse_header(3)[cowboy_req:parse_header(3)],
link:man:cowboy_req:match_cookies(3)[cowboy_req:match_cookies(3)]