HttpListenerContext Class

Provides access to the request and response objects used by the HttpListener class. This class cannot be inherited.


Namespace:  System.Net
Assembly:  System (in System.dll)

Public NotInheritable Class HttpListenerContext

The HttpListenerContext type exposes the following members.

Public propertyRequestGets the HttpListenerRequest that represents a client's request for a resource.
Public propertyResponseGets the HttpListenerResponse object that will be sent to the client in response to the client's request.
Public propertyUserGets an object used to obtain identity, authentication information, and security roles for the client whose request is represented by this HttpListenerContext object.

Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

This class provides the information related to a client's Hypertext Transfer Protocol (HTTP) request being processed by an HttpListener object. The GetContext method returns instances of the HttpListenerContext class. To get the object that represents the client request, use the Request property. To get the object that represents the response that will be sent to the client by the HttpListener, use the Response property. To get user information about the client sending the request, such as its login name and whether it has been authenticated, you can query the properties in the IPrincipal object returned by the User property.

Closing an HttpListenerContext object sends the response to the client and frees any resources used by the HttpListenerContext. Aborting an HttpListenerContext object discards the response to the client if it has not already been sent, and frees any resources used by the HttpListenerContext. After closing or aborting an HttpListenerContext object, you cannot reference its methods or properties. If you do so, you will receive an ObjectDisposedException exception.

Windows XP Home Edition, Windows XP Professional x64 Edition, Windows Server 2003 Platform Note: Service pack 2 is required to use the HttpListener class.

The following code example displays the user information for a client request.

Public Shared Function ClientInformation(ByVal context As HttpListenerContext) As String
    Dim user As System.Security.Principal.IPrincipal = context.User
    Dim id As System.Security.Principal.IIdentity = user.Identity
    If id Is Nothing Then
        Return "Client authentication is not enabled for this Web server."
    End If

    Dim display As String
    If id.IsAuthenticated Then
        display = String.Format("{0} was authenticated using {1}", id.Name, id.AuthenticationType)
        display = String.Format("{0} was not authenticated", id.Name)
    End If
    Return display
End Function

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft