boost::urls::url_base::set_encoded_params

Set the query params

Synopsis

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.

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

Complexity

Linear.

Exception Safety

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

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.