Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext
static_url::query

(Inherited from url_view_base)

Return the query.

Synopsis
template<
    class StringToken = string_token::return_string>
StringToken::result_type
query(
    StringToken&& token = {}) const;
Description

If this contains a query, it is returned as a string (which may be empty). Otherwise, an empty string is returned. Any percent-escapes in the string are decoded first.

When plus signs appear in the query portion of the url, they are converted to spaces automatically upon decoding. This behavior can be changed by setting decode options.

Example
assert( [link url.ref.boost__urls__url_view_base.url_view `url_view`]( "/sql?id=42&name=jane%2Ddoe&page+size=20" ).[link url.ref.boost__urls__static_url.query `query`]() == "id=42&name=jane-doe&page size=20" );
Complexity

Linear in this->query().size().

Exception Safety

Calls to allocate may throw.

BNF
[link url.ref.boost__urls__static_url.query `query`]           = *( pchar / "/" / "?" )

[link url.ref.boost__urls__static_url.query `query`]-param     = key [ "=" value ]
[link url.ref.boost__urls__static_url.query `query`]-[link url.ref.boost__urls__url_view.params `params`]    = [ [link url.ref.boost__urls__static_url.query `query`]-param ] *( "&" [link url.ref.boost__urls__static_url.query `query`]-param )
Specification
See Also

encoded_params, encoded_query, has_query, params.


PrevUpHomeNext