set_encoded_query

Set the query

Synopsis

url_base& set_encoded_query( pct_string_view s);

Declared in file <src/url_base.cpp> at line 1357

Description

This sets the query to the string, which may contain percent-escapes and can be empty. An empty query 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_query( "id=42" ).encoded_query() == "id=42" );

Postconditions

this->has_query() == true && this->query() == decode_view( s );

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 )

Specification

  • 3.4. Query (rfc3986)
  • Query string (Wikipedia)