From 1b863c350ba1f9b8ad1cb458df514ab0fe6bb127 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Mon, 11 Dec 2017 11:27:17 +0100 Subject: Add documentation for Cowboy 2.2 --- .../cowboy_req.read_urlencoded_body/index.html | 263 +++++++++++++++++++++ 1 file changed, 263 insertions(+) create mode 100644 docs/en/cowboy/2.2/manual/cowboy_req.read_urlencoded_body/index.html (limited to 'docs/en/cowboy/2.2/manual/cowboy_req.read_urlencoded_body/index.html') diff --git a/docs/en/cowboy/2.2/manual/cowboy_req.read_urlencoded_body/index.html b/docs/en/cowboy/2.2/manual/cowboy_req.read_urlencoded_body/index.html new file mode 100644 index 00000000..081cfd40 --- /dev/null +++ b/docs/en/cowboy/2.2/manual/cowboy_req.read_urlencoded_body/index.html @@ -0,0 +1,263 @@ + + + + + + + + + + + + Nine Nines: cowboy_req:read_urlencoded_body(3) + + + + + + + + + + + + + + + + +
+
+
+
+ +

cowboy_req:read_urlencoded_body(3)

+ +
+

Name

+
+

cowboy_req:read_urlencoded_body - Read and parse a urlencoded request body

+
+
+
+

Description

+
+
+
+
read_urlencoded_body(Req :: cowboy_req:req())
+    -> read_urlencoded_body(Req, #{})
+
+read_urlencoded_body(Req :: cowboy_req:req(), Opts)
+    -> {ok, Body, Req}
+
+Opts :: cowboy_req:read_body_opts()
+Body :: [{Key :: binary(), Value :: binary() | true}]
+

Read and parse a urlencoded request body.

+

This function reads the request body and parses it as +application/x-www-form-urlencoded. It returns a list +of key/values.

+

The urlencoded media type is used by Web browsers when +submitting HTML forms using the POST method.

+

Cowboy needs to read the full body before parsing. By default +it will read bodies of size up to 64KB. It is possible to +provide options to read larger bodies if required.

+

Cowboy will automatically handle protocol details including +the expect header, chunked transfer-encoding and others.

+

Once the body has been read, Cowboy sets the content-length +header if it was not previously provided.

+

This function can only be called once. Calling it again will +result in undefined behavior.

+
+
+
+

Arguments

+
+
+
+Req +
+
+

+The Req object. +

+
+
+Opts +
+
+

+A map of body reading options. Please refer to +cowboy_req:read_body(3) +for details about each option. +

+

This function defaults the length to 64KB and the period +to 5 seconds.

+
+
+
+
+
+

Return value

+
+

An ok tuple is returned containing a list of key/values found +in the body.

+

The Req object returned in the tuple must be used for that point +onward. It contains a more up to date representation of the request. +For example it may have an added content-length header once the +body has been read.

+
+
+
+

Changelog

+
+
    +
  • +

    +2.0: Function introduced. Replaces body_qs/1,2. +

    +
  • +
+
+
+
+

Examples

+
+
+
Read a urlencoded body
+
+
{ok, Body, Req} = cowboy_req:read_urlencoded_body(Req0),
+{_, Lang} = lists:keyfind(<<"lang">>, 1, Body).
+
+
Allow large urlencoded bodies
+
+
{ok, Body, Req} = cowboy_req:read_urlencoded_body(Req0, #{length => 1000000}).
+
+
+ + + + + + +
+ +
+ + +

+ Cowboy + 2.2 + Function Reference + +

+ + + +

Navigation

+ +

Version select

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