Plug.Conn.Query

Parsed documentation:
View on GitHub
Conveniences for decoding and encoding url encoded queries.

Plug allows a developer to build query strings
that map to Elixir structures in order to make
manipulation of such structures easier on the server
side. Here are some examples:

    iex> decode("foo=bar")["foo"]
    "bar"

If a value is given more than once, the last value takes precedence:

    iex> decode("foo=bar&foo=baz")["foo"]
    "baz"

Nested structures can be created via `[key]`:

    iex> decode("foo[bar]=baz")["foo"]["bar"]
    "baz"

Lists are created with `[]`:

    iex> decode("foo[]=bar&foo[]=baz")["foo"]
    ["bar", "baz"]

Maps can be encoded:

    iex> encode(%{foo: "bar", baz: "bat"})
    "baz=bat&foo=bar"

Encoding keyword lists preserves the order of the fields:

    iex> encode([foo: "bar", baz: "bat"])
    "foo=bar&baz=bat"

When encoding keyword lists with duplicate keys, the key that comes first
takes precedence:

    iex> encode([foo: "bar", foo: "bat"])
    "foo=bar"

Encoding named lists:

    iex> encode(%{foo: ["bar", "baz"]})
    "foo[]=bar&foo[]=baz"

Encoding nested structures:

    iex> encode(%{foo: %{bar: "baz"}})
    "foo[bar]=baz"
No suggestions.
Please help! Open an issue on GitHub if this assessment is incorrect.