Query string

Description

Match based on the query string parameters included in an incoming request.

You can match on the presence or absence of a query string parameter and the value. If you omit the value, the match is to any request that contains the parameter.

Cloudlets Supported

All Cloudlets support this match type.

Fields

For this match type, you complete these fields:

NameDescription
NameThe name of the query string to match on.
This field accepts wildcards.
Value (optional)The query string value to match on.

In this field, you have the option of pasting in a large list of values that are separated by a delimiter. Valid delimiters include spaces, and carriage returns.

If you have a large number of values, you can paste them in if you separate them with a space, or carriage return.

This field accepts wildcards.

Valid Input

For the Name and Value fields, you can use almost any printable character that is not a separator. You must use percent encoding (%XX) for any value greater than 0x7F in ASCII.

The following table lists examples of valid input for this match type:

ExampleDetails
http://example.com/?optionBooleanNo value required. Exists or not.
http://example.com?optionBooleanNo value required. Exists or not.
http://example.com/?option=valueThe value must follow the RFC-3986 standard.
http://example.com/?option=No value required.

Wildcards

The query string match supports these wildcards in the Value field.

WildcardDescriptionExample
*matches zero or more charactersThe rule includes a match with a value of 123* for a query string called assetId. Some possible valid results for the query string value with this wildcard are 123, 1234, 123456.
?matches a single characterThe rule includes a match with a value of 123? for a query string called assetId. Some possible valid results for the query string value with this wildcard are 1234 and 1235.

You can use wildcards with the contains and does not contain operators for this match type.

Operators

The following are the available operators for this match type:

ValueThe rule is true whenExample
is one ofthe incoming request includes a query string whose name and value are listed in the rule’s if clause.

If you select Case Sensitive, the rule is true when the case of the characters in both fields matches that shown on the rules screen.
The rule includes a match where the query string name is foo and the cookie value is bar, and case sensitivity has not been set. In this instance, the following values in the incoming request will be valid:

  • Name: too, tOo, tOO, toO, Too, TOo, TOO, ToO

  • Value: car, cAr, cAR, caR, Car, CAr, CAR, CaR
  • is not one ofthe incoming request does not include a query string whose name and value are listed in the rule’s if clause.

    If you select Case Sensitive, the rule is true when the case of the characters in both fields doesn't match that shown on the rules screen.
    The rule includes a match where the query string name is too and the query string value is car, and case sensitivity has not been set. In this instance, all but the following values are valid:

  • Name: too, tOo, tOO, toO, Too, TOo, TOO, ToO

  • Value: car, cAr, cAR, caR, Car, CAr, CAR, CaR
  • contains any ofthe incoming request contains a query string whose name and value, at minimum, includes the combination of characters entered.

    If you select Case Sensitive, the rule is true when the case of the characters in both fields matches that shown on the rules screen.
    The rule includes a match where the query string name is too and the query string value is car, and case sensitivity hasn't been set. In this instance, any query string name that includes too is true. For example, 123too45 would be valid. However, 123to45 would not.
    does not contain any ofthe incoming request contains a query string whose name and value doesn't, at minimum, include the combination of characters listed in the rule’s if clause.

    If you select Case Sensitive, the rule is true when the case of the characters in both fields doesn't match that shown on the rules screen.
    The rule includes a match where the query string name cannot include too and the query string value can't include car. Case sensitivity hasn't been set. In this instance, any query string name that includes too is invalid. For example, 123to45 would be valid. However, 123too45 would not.