URI argument and value fields
The Cloudflare Rules language includes URI argument and value fields associated with HTTP requests. Many of these fields return arrays containing the respective values.
The Cloudflare Rules language supports these URI argument and value fields.
http.request.uri.args
Map<Array<String>>
The HTTP URI arguments associated with a request represented as a Map (associative array).
When an argument repeats, the array contains multiple items in the order they appear in the request.
The values are not pre-processed and retain the original case used in the request.
- Decoding: no decoding performed
- Non-ASCII: preserved
Example:
any(http.request.uri.args["search"][*] == "red+apples")
Example value:
{"search": ["red+apples"]}
http.request.uri.args.names
Array<String>
The names of the arguments in the HTTP URI query string. The names are not pre-processed and retain the original case used in the request.
When a name repeats, the array contains multiple items in the order that they appear in the request.
- Decoding: no decoding performed
- Non-ASCII: preserved
Example:
any(http.request.uri.args.names[*] == "search")
Example value:
["search"]
http.request.uri.args.values
Array<String>
The values of arguments in the HTTP URI query string. The values are not pre-processed and retain the original case used in the request. They are in the same order as in the request.
Duplicated values are listed multiple times.
- Decoding: no decoding performed
- Non-ASCII: preserved
Example:
any(http.request.uri.args.values[*] == "red+apples")
Example value:
["red+apples"]
raw.http.request.uri.args
Map<Array<String>>
The raw HTTP URI arguments associated with a request represented as a Map (associative array).
This is the raw field version of the http.request.uri.args
field. Raw fields, prefixed with raw.
, preserve original request values for later evaluations. These fields are immutable during the entire request evaluation workflow, and they are not affected by the actions of previously matched rules.
raw.http.request.uri.args.names
Array<String>
The raw names of the arguments in the HTTP URI query string.
This is the raw field version of the http.request.uri.args.names
field. Raw fields, prefixed with raw.
, preserve original request values for later evaluations. These fields are immutable during the entire request evaluation workflow, and they are not affected by the actions of previously matched rules.
raw.http.request.uri.args.values
Array<String>
The raw values of arguments in the HTTP URI query string.
This is the raw field version of the http.request.uri.args.values
field. Raw fields, prefixed with raw.
, preserve original request values for later evaluations. These fields are immutable during the entire request evaluation workflow, and they are not affected by the actions of previously matched rules.