HttpListenerRequest Classe

Definição

Descreve uma solicitação HTTP de entrada a um objeto HttpListener.Describes an incoming HTTP request to an HttpListener object. Essa classe não pode ser herdada.This class cannot be inherited.

public ref class HttpListenerRequest sealed
public sealed class HttpListenerRequest
type HttpListenerRequest = class
Public NotInheritable Class HttpListenerRequest
Herança
HttpListenerRequest

Exemplos

O exemplo de código a seguir demonstra como receber e responder a um HttpListenerRequest .The following code example demonstrates how to receive and respond to a HttpListenerRequest.

// This example requires the System and System.Net namespaces.
public static void SimpleListenerExample(string[] prefixes)
{
    if (!HttpListener.IsSupported)
    {
        Console.WriteLine ("Windows XP SP2 or Server 2003 is required to use the HttpListener class.");
        return;
    }
    // URI prefixes are required,
    // for example "http://contoso.com:8080/index/".
    if (prefixes == null || prefixes.Length == 0)
      throw new ArgumentException("prefixes");

    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes.
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    Console.WriteLine("Listening...");
    // Note: The GetContext method blocks while waiting for a request.
    HttpListenerContext context = listener.GetContext();
    HttpListenerRequest request = context.Request;
    // Obtain a response object.
    HttpListenerResponse response = context.Response;
    // Construct a response.
    string responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    byte[] buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
    // Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length;
    System.IO.Stream output = response.OutputStream;
    output.Write(buffer,0,buffer.Length);
    // You must close the output stream.
    output.Close();
    listener.Stop();
}
Public Shared Sub SimpleListenerExample(prefixes As String())
    If Not HttpListener.IsSupported Then
        Console.WriteLine("Windows XP SP2 or Server 2003 is required to use the HttpListener class.")
        Return
    End If
    ' URI prefixes are required,
    ' for example "http://contoso.com:8080/index/".
    If prefixes Is Nothing Or prefixes.Length = 0 Then
        Throw New ArgumentException("prefixes")
    End If

    ' Create a listener
    Dim listener = New HttpListener()

    For Each s As String In prefixes
        listener.Prefixes.Add(s)
    Next
    listener.Start()
    Console.WriteLine("Listening...")
    ' Note: The GetContext method blocks while waiting for a request.
    Dim context As HttpListenerContext = listener.GetContext()
    Console.WriteLine("Listening...")
    ' Obtain a response object
    Dim request As HttpListenerRequest = context.Request
    ' Construct a response.
    Dim response As HttpListenerResponse = context.Response
    Dim responseString As String = "<HTML><BODY> Hello world!</BODY></HTML>"
    Dim buffer As Byte() = System.Text.Encoding.UTF8.GetBytes(responseString)
    ' Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length
    Dim output As System.IO.Stream = response.OutputStream
    output.Write(buffer, 0, buffer.Length)
    'You must close the output stream.
    output.Close()
    listener.Stop()
End Sub

Comentários

Quando um cliente faz uma solicitação para um URI (Uniform Resource Identifier) manipulado por um HttpListener objeto, o HttpListener fornece um HttpListenerContext objeto que contém informações sobre o remetente, a solicitação e a resposta que é enviada ao cliente.When a client makes a request to a Uniform Resource Identifier (URI) handled by an HttpListener object, the HttpListener provides a HttpListenerContext object that contains information about the sender, the request, and the response that is sent to the client. A HttpListenerContext.Request propriedade retorna o HttpListenerRequest objeto que descreve a solicitação.The HttpListenerContext.Request property returns the HttpListenerRequest object that describes the request.

O HttpListenerRequest objeto contém informações sobre a solicitação, como a cadeia de HttpMethod caracteres de solicitação, a UserAgent cadeia de caracteres e os dados do corpo da solicitação (consulte a InputStream Propriedade).The HttpListenerRequest object contains information about the request, such as the request HttpMethod string, UserAgent string, and request body data (see the InputStream property).

Para responder à solicitação, você deve obter a resposta associada usando a Response propriedade.To reply to the request, you must get the associated response using the Response property.

Propriedades

AcceptTypes

Obtém os tipos MIME aceitos pelo cliente.Gets the MIME types accepted by the client.

ClientCertificateError

Obtém um código de erro que identifica um problema com o X509Certificate fornecido pelo cliente.Gets an error code that identifies a problem with the X509Certificate provided by the client.

ContentEncoding

Obtém a codificação do conteúdo que pode ser usado com os dados enviados com a solicitação.Gets the content encoding that can be used with data sent with the request.

ContentLength64

Obtém o comprimento do corpo de dados incluído na solicitação.Gets the length of the body data included in the request.

ContentType

Obtém o tipo MIME do corpo de dados incluído na solicitação.Gets the MIME type of the body data included in the request.

Cookies

Obtém os cookies enviados com a solicitação.Gets the cookies sent with the request.

HasEntityBody

Obtém um valor Boolean que indica se a solicitação tem um corpo de dados associado.Gets a Boolean value that indicates whether the request has associated body data.

Headers

Obtém a coleção de pares de nome/valor do cabeçalho enviado na solicitação.Gets the collection of header name/value pairs sent in the request.

HttpMethod

Obtém o método HTTP especificado pelo cliente.Gets the HTTP method specified by the client.

InputStream

Obtém um fluxo que contém os dados do corpo enviados pelo cliente.Gets a stream that contains the body data sent by the client.

IsAuthenticated

Obtém um valor Boolean que indica se o cliente enviando essa solicitação está autenticado.Gets a Boolean value that indicates whether the client sending this request is authenticated.

IsLocal

Obtém um valor Boolean que indica se a solicitação foi enviada do computador local.Gets a Boolean value that indicates whether the request is sent from the local computer.

IsSecureConnection

Obtém um valor Boolean que indica se a conexão TCP usada para enviar a solicitação está usando o protocolo SSL.Gets a Boolean value that indicates whether the TCP connection used to send the request is using the Secure Sockets Layer (SSL) protocol.

IsWebSocketRequest

Obtém um valor Boolean que indica se a conexão TCP foi uma solicitação WebSocket.Gets a Boolean value that indicates whether the TCP connection was a WebSocket request.

KeepAlive

Obtém um valor Boolean que indica se o cliente solicita uma conexão persistente.Gets a Boolean value that indicates whether the client requests a persistent connection.

LocalEndPoint

Obtém o endereço IP e número da porta do servidor para o qual a solicitação é direcionada.Gets the server IP address and port number to which the request is directed.

ProtocolVersion

Obtém a versão HTTP usada pelo cliente solicitante.Gets the HTTP version used by the requesting client.

QueryString

Obtém a cadeia de caracteres de consulta incluída na solicitação.Gets the query string included in the request.

RawUrl

Obtém as informações de URL (sem o host e a porta) solicitadas pelo cliente.Gets the URL information (without the host and port) requested by the client.

RemoteEndPoint

Obtém o endereço IP e o número da porta do cliente que originou a solicitação.Gets the client IP address and port number from which the request originated.

RequestTraceIdentifier

Obtém o identificador da solicitação HTTP de entrada.Gets the request identifier of the incoming HTTP request.

ServiceName

Obtém o SPN (nome do provedor de serviços) que o cliente enviou na solicitação.Gets the Service Provider Name (SPN) that the client sent on the request.

TransportContext

Obtém o TransportContext da solicitação do cliente.Gets the TransportContext for the client request.

Url

Obtém o objeto Uri solicitado pelo cliente.Gets the Uri object requested by the client.

UrlReferrer

Obtém o URI (Uniform Resource Identifier) do recurso que encaminhou o cliente para o servidor.Gets the Uniform Resource Identifier (URI) of the resource that referred the client to the server.

UserAgent

Obtém o agente do usuário apresentado pelo cliente.Gets the user agent presented by the client.

UserHostAddress

Obtém o endereço IP e número da porta do servidor para o qual a solicitação é direcionada.Gets the server IP address and port number to which the request is directed.

UserHostName

Obtém o nome DNS e, se fornecido, o número da porta especificado pelo cliente.Gets the DNS name and, if provided, the port number specified by the client.

UserLanguages

Obtém os idiomas naturais preferenciais para a resposta.Gets the natural languages that are preferred for the response.

Métodos

BeginGetClientCertificate(AsyncCallback, Object)

Inicia uma solicitação assíncrona para o certificado X.509 v.3 do cliente.Begins an asynchronous request for the client's X.509 v.3 certificate.

EndGetClientCertificate(IAsyncResult)

Termina uma solicitação assíncrona para o certificado X.509 v.3 do cliente.Ends an asynchronous request for the client's X.509 v.3 certificate.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetClientCertificate()

Recupera o certificado X.509 v.3 do cliente.Retrieves the client's X.509 v.3 certificate.

GetClientCertificateAsync()

Recupera o certificado X.509 v.3 do cliente como uma operação assíncrona.Retrieves the client's X.509 v.3 certificate as an asynchronous operation.

GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Aplica-se a

Confira também