GetHttpRequestData

Description

Makes HTTP request headers and body available to CFML pages. Useful for capturing SOAP request data, which can be delivered in an HTTP header.

Returns

A ColdFusion structure.

Function syntax

GetHttpRequestData()

Returns

The function returns a structure that contains the following entries:

Structure element

Description

content

Raw content from form submitted by client, in string or binary format. For content to be considered string data, the FORM request header "CONTENT_TYPE" must start with "text/" or be special case "application/x-www-form-urlencoded". Other types are stored as a binary object.

headers

Structure that contains HTTP request headers as value pairs. Includes custom headers, such as SOAP requests.

method

String that contains the CGI variable Request_Method.

protocol

String that contains the Server_Protocol CGI variable.

Usage

To determine whether data is binary, use IsBinary(x.content). To convert data to a string value, if it can be displayed as a string, use ToString(x.content).

Example

The following example shows how this function can return HTTP header information.

<cfset x = GetHttpRequestData()> 
<cfoutput> 
<table cellpadding = "2" cellspacing = "2"> 
<tr> 
     <td><b>HTTP Request item</b></td> 
     <td><b>Value</b></td> </tr> 
<cfloop collection = #x.headers# item = "http_item"> 
        <tr> 
        <td>#http_item#</td> 
        <td>#StructFind(x.headers, http_item)#</td>    </tr> 
</cfloop> 
<tr> 
    <td>request_method</td> 
    <td>#x.method#</td></tr> 
<tr> 
    <td>server_protocol</td> 
    <td>#x.protocol#</td></tr> 
</table> 
<b>http_content --- #x.content#</b> 
</cfoutput>