Chapter 6 Advanced Expressions: Parsing HTTP, TCP, and UDP Data 123

Operations That Evaluate HTTP Headers

HTTP Header Operation

Description

 

 

http header.

Returns a Boolean TRUE if the string argument appears

CONTAINS("string")

in any instance of the header value.

 

Note: This operation overrides any text-based Contains

 

operations on all instances of the current header type.

 

Following is an example of request with two headers:

 

HTTP/1.1 200 OK\r\n

 

MyHeader: abc\r\n

 

Content-Length: 200\r\n

 

MyHeader: def\r\n

 

\r\n

 

The following returns a Boolean TRUE:

 

http.res.header("MyHeader").

 

contains("de")

 

The following returns FALSE. Note that the NetScaler

 

does not concatenate the different values.

 

http.res.header("MyHeader").

 

contains("bcd")

http header.COUNT

Returns the number of headers in a request or response,

 

to a maximum of 15 headers of the same type. The

 

result is undefined if there are more than 15 instances of

 

the header.

 

Following is sample data in a request:

 

HTTP/1.1 200 OK\r\n

 

MyHeader: abc\r\n

 

Content-Length: 200\r\n

 

MyHeader: def\r\n

 

\r\n

 

When evaluating the preceding request, the following

 

returns a count of 2:

 

http.res.header("MyHeader").count

Page 137
Image 137
Citrix Systems 9.2 manual Any instance of the header value, Following is an example of request with two headers, Header