Home:

boost::urls::url_base::set_encoded_params

Set the query params

Synopsis

Declared in header <boost/url/url_base.hpp>

url_base&
set_encoded_params(std::initializer_list<param_pct_view> ps) noexcept;

Description

This sets the query params to the elements in the list, which may contain percent-escapes and can be empty.

An empty list of params is distinct from having no query.

Escapes in the string are preserved, and reserved characters in the string are percent-escaped in the result.

Example

assert( url( "http://example.com" ).set_encoded_params( {"id", "42"} ).encoded_query() == "id=42" );

Postconditions

this->has_query() == true

Complexity

Linear.

Exception Safety

Strong guarantee. Calls to allocate may throw. Exceptions thrown on invalid input.

BNF

query           = *( pchar / "/" / "?" )

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

Exceptions

Name Thrown on

system_error

some element in ps contains an invalid percent-encoding.

Parameters

Name Description

ps

The params to set.