C
HAPTER
11
Advanced Policies: Sending HTTP Service Callouts to Applications
You can use HTTP callouts to obtain information from external applications. For
example, if a server makes a request, you can use an HTTP callout to determine if
this server is on a “deny access” list. The callout policy sends an HTTP request to
an external application. An agent that you deploy in front of the application
formats the request for the application. When the application returns a response,
the agent formats the response for the NetScaler, and the callout policy extracts
data of interest from the response. For example, you can configure a callout that
sends a client's source domain to a server that looks up bad domains from a list.
When the server sends a response, the callout can extract just the “allowed” or
“denied” portion of the response.
You configure an HTTP callout as a specialized type of policy. After configuring
an HTTP callout policy, you can invoke it from policies and other functions (for
example, actions) that use advanced expressions. The expression prefix SYS.
HTTP_CALLOUT invokes a callout policy. For example, you can invoke an
HTTP callout policy from a Rewrite action and insert the value that is returned by
the callout in an HTTP response header.
Note that you cannot invoke an HTTP callout in a DELETE Rewrite action.
In This Chapter
About Calling Out to an External Application
About HTTP Callout Policies
Configuring an HTTP Callout Policy
Invoking an HTTP Callout Policy
Note: To deploy an HTTP callout, in addition to configuring the policy as
described in this chapter, you must also create an agent that formats the callout
request for the receiving application and formats the application's response to the
NetScaler. For details on the callout agent, see the chapter on HTTP callouts in
the Citrix NetScaler AppExpert Guide.