boost::urls::url::set_encoded_query :: Boost Libraries Documentation

# boost::urls::url::set_encoded_query

Set the query

## Synopsis

Declared in `<boost/url/url.hpp>`

    url&
    set_encoded_query(pct_string_view s);

## 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)

## Return Value

`*this`

## Parameters

Name | Description
s | The string to set.

## See Also

`encoded_params`, `params`, `remove_query`, `set_query`.

Created with MrDocs