params_view

Constructor

Synopsis

void params_view( string_view s, encoding_opts opt);

Declared in file <src/params_view.cpp> at line 49

Description

This function constructs params from a valid query parameter string, which can contain percent escapes.

This instance will use the specified encoding_opts when the values are decoded.

Unlike the parameters in URLs, the string passed here should not start with "?". Upon construction, the view will reference the character buffer pointed to by `s`. The caller is responsible for ensuring that the lifetime of the buffer extends until it is no longer referenced.

Example

encoding_opts opt; opt.space_as_plus = true; params_view qp( "name=John+Doe", opt );

Effects

return params_view(parse_query( s ).value(), opt);

Postconditions

this->buffer().data() == s.data()

Complexity

Linear in `s`.

Exception Safety

Exceptions thrown on invalid input.

BNF

query-params = [ query-param ] *( "&" query-param ) query-param = key [ "=" value ]

Specification

  • 3.4. Query