RESTinio
|
Traits for parsing a query string in a very relaxed mode. More...
#include <uri_helpers.hpp>
Additional Inherited Members | |
![]() | |
static bool | ordinary_char (char c) noexcept |
![]() | |
static string_view_t::size_type | find_next_separator (string_view_t where, string_view_t::size_type start_from) noexcept |
Traits for parsing a query string in a very relaxed mode.
In that mode all characters described in that rule from RCF3986 can be used as unexceped:
query = *( pchar / "/" / "?" ) pchar = unreserved / pct-encoded / sub-delims / ":" / "@" unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~" reserved = gen-delims / sub-delims gen-delims = ":" / "/" / "?" / "#" / "[" / "]" / "@" sub-delims = "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="
Additionaly this traits allows to use unexcaped space character.
Note that despite that fact that symbols like #
, +
, =
and &
can be used in non-percent-encoded form they play special role and are interpreted special way. So such symbols should be percent-encoded if they are used as part of name or value in query string.
Only ampersand (&
) can be used as name=value
pairs separator.
Usage example:
Definition at line 325 of file uri_helpers.hpp.