Skip to content

Latest commit

 

History

History
52 lines (38 loc) · 3.35 KB

File metadata and controls

52 lines (38 loc) · 3.35 KB
title IHttpRequest::GetRawHttpRequest Method
description Learn how the IHttpRequest::GetRawHttpRequest method returns a structure that contains the raw HTTP request.
ms.date 10/07/2016
ms.assetid fa0ce96b-acb6-5dd8-5225-08909ff40868

IHttpRequest::GetRawHttpRequest Method

Returns a structure that contains the raw HTTP request.

Syntax

virtual HTTP_REQUEST* GetRawHttpRequest(  
   VOID  
) = 0;  

Parameters

This method takes no parameters.

Return Value

A pointer to an HTTP_REQUEST structure.

Remarks

The GetRawHttpRequest method retrieves the raw request and returns a pointer to an HTTP_REQUEST structure that contains the current request entity.

Note

The HTTP_REQUEST structure is defined in the Http.h file.

The lifetime of this structure is controlled by the server, and the structure is available until the end of the request.

Example

The following code example demonstrates how to use the GetRawHttpRequest method to create an HTTP module that retrieves the HTTP_REQUEST structure for the current request. The code example then shows how to use the structure to retrieve the HTTP verb, HTTP major version, and HTTP minor version for the request.

[!code-cppIHttpRequestGetRawHttpRequest#1]

Your module must export the RegisterModule function. You can export this function by creating a module definition (.def) file for your project, or you can compile the module by using the /EXPORT:RegisterModule switch. For more information, see Walkthrough: Creating a Request-Level HTTP Module By Using Native Code.

You can optionally compile the code by using the __stdcall (/Gz) calling convention instead of explicitly declaring the calling convention for each function.

Requirements

Type Description
Client - IIS 7.0 on [!INCLUDEwinvista]
- IIS 7.5 on Windows 7
- IIS 8.0 on Windows 8
- IIS 10.0 on Windows 10
Server - IIS 7.0 on [!INCLUDEwinsrv2008]
- IIS 7.5 on Windows Server 2008 R2
- IIS 8.0 on Windows Server 2012
- IIS 8.5 on Windows Server 2012 R2
- IIS 10.0 on Windows Server 2016
Product - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- [!INCLUDEiisexp75], [!INCLUDEiisexp80], [!INCLUDEiisexp100]
Header Httpserv.h

See Also

IHttpRequest Interface
IHttpResponse::GetRawHttpResponse Method