Replacing the HTTP response
You can create an entirely new HTTP response for a specified HTTP request. To achieve this behavior, modify an HTTP Request to produce an HTTPResponseChange XML document with action="replace" in the base XML element.
For example:
<?xml version="1.0" encoding="UTF-8"?>
<HTTPResponseChange action="replace">
<Version>HTTP/1.1</Version>
<StatusCode>503</StatusCode>
<Reason>Not Implemented</Reason>
<Body>%3Ch1%3EError%3C%2Fh1%3E%0A%3Cp%3EInvalid%20cookie%20%3C%2Fp%3E</Body>
</HTTPResponseChange>
See Scenario 5: Providing a response to a known HTTP request for an example scenario.
The HTTPResponseChange
document can
result from
HTTP Request or HTTP Response modifications.
If WebSEAL receives an HTTPResponseChange document with action="replace" as a result of an HTTP Request modification then WebSEAL:
- Interrupts the normal flow of processing and does not generate a response in the usual manner.
- Constructs a new HTTP response based on the provided XML document.
You can use this functionality to intercept particular HTTP Requests and provide a predefined response.
Note: Similarly, if WebSEAL
receives an HTTPResponseChange document
with action="replace" as a result of an HTTP Response modification
then WebSEAL:
- Discards the original response.
- Uses the response that is specified in the XML.