HttpListenerRequest Classe

Définition

Décrit une requête HTTP entrante vers un HttpListener objet. Cette classe ne peut pas être héritée.

public ref class HttpListenerRequest sealed
public sealed class HttpListenerRequest
type HttpListenerRequest = class
Public NotInheritable Class HttpListenerRequest
Héritage
HttpListenerRequest

Exemples

L’exemple de code suivant montre comment recevoir et répondre à un 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

Remarques

Lorsqu’un client envoie une requête à un URI géré par un HttpListener objet, il HttpListener fournit un HttpListenerContext objet qui contient des informations sur l’expéditeur, la requête et la réponse envoyée au client. La HttpListenerContext.Request propriété retourne l’objet HttpListenerRequest qui décrit la requête.

L’objet HttpListenerRequest contient des informations sur la requête, telles que la chaîne de requête, UserAgent la chaîne et les données du corps de la requête HttpMethod (voir la InputStream propriété).

Pour répondre à la demande, vous devez obtenir la réponse associée à l’aide de la Response propriété.

Propriétés

Nom Description
AcceptTypes

Obtient les types MIME acceptés par le client.

ClientCertificateError

Obtient un code d’erreur qui identifie un problème avec le X509Certificate client fourni.

ContentEncoding

Obtient l’encodage de contenu qui peut être utilisé avec les données envoyées avec la requête.

ContentLength64

Obtient la longueur des données du corps incluses dans la requête.

ContentType

Obtient le type MIME des données de corps incluses dans la requête.

Cookies

Obtient les cookies envoyés avec la demande.

HasEntityBody

Obtient une Boolean valeur qui indique si la requête a des données de corps associées.

Headers

Obtient la collection de paires nom/valeur d’en-tête envoyées dans la requête.

HttpMethod

Obtient la méthode HTTP spécifiée par le client.

InputStream

Obtient un flux qui contient les données du corps envoyées par le client.

IsAuthenticated

Obtient une Boolean valeur qui indique si le client envoyant cette demande est authentifié.

IsLocal

Obtient une Boolean valeur qui indique si la requête est envoyée à partir de l’ordinateur local.

IsSecureConnection

Obtient une Boolean valeur qui indique si la connexion TCP utilisée pour envoyer la requête utilise le protocole SSL (Secure Sockets Layer).

IsWebSocketRequest

Obtient une Boolean valeur qui indique si la connexion TCP était une requête WebSocket.

KeepAlive

Obtient une Boolean valeur qui indique si le client demande une connexion persistante.

LocalEndPoint

Obtient l’adresse IP du serveur et le numéro de port vers lequel la requête est dirigée.

ProtocolVersion

Obtient la version HTTP utilisée par le client demandeur.

QueryString

Obtient la chaîne de requête incluse dans la requête.

RawUrl

Obtient les informations d’URL (sans l’hôte et le port) demandées par le client.

RemoteEndPoint

Obtient l’adresse IP cliente et le numéro de port à partir desquels la requête provient.

RequestTraceIdentifier

Obtient l’identificateur de requête de la requête HTTP entrante.

ServiceName

Obtient le nom du fournisseur de services (SPN) envoyé par le client à la demande.

TransportContext

Obtient la TransportContext requête du client.

Url

Obtient l’objet Uri demandé par le client.

UrlReferrer

Obtient l’URI (Uniform Resource Identifier) de la ressource qui a fait référence au client au serveur.

UserAgent

Obtient l’agent utilisateur présenté par le client.

UserHostAddress

Obtient l’adresse IP du serveur et le numéro de port vers lequel la requête est dirigée.

UserHostName

Obtient le nom DNS et, s’il est fourni, le numéro de port spécifié par le client.

UserLanguages

Obtient les langages naturels préférés pour la réponse.

Méthodes

Nom Description
BeginGetClientCertificate(AsyncCallback, Object)

Commence une demande asynchrone pour le certificat X.509 v.3 du client.

EndGetClientCertificate(IAsyncResult)

Termine une demande asynchrone pour le certificat X.509 v.3 du client.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetClientCertificate()

Récupère le certificat X.509 v.3 du client.

GetClientCertificateAsync()

Récupère le certificat X.509 v.3 du client en tant qu’opération asynchrone.

GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à

Voir aussi