Partager via


Dérivation à partir de WebResponse

WebResponse est une classe de base abstraite qui fournit les méthodes et les propriétés de base permettant de créer une réponse spécifique au protocole adaptée au modèle de protocole enfichable du .NET Framework. Les applications qui utilisent la classe WebRequest pour demander des données à des ressources reçoivent les réponses dans une classe WebResponse. Les descendants de WebResponse spécifiques au protocole doivent implémenter les membres abstraits de la classe WebResponse.

La classe WebRequest associée doit créer des descendants de WebResponse. Par exemple, les instances de HttpWebResponse ne sont créées qu'en tant que résultat de l'appel de HttpWebRequest.GetResponse ou de HttpWebRequest.EndGetResponse. Chaque WebResponse contient le résultat d'une demande adressée à une ressource et n'est pas destinée à être réutilisée.

ContentLength, propriété

La propriété ContentLength indique le nombre d'octets de données disponibles dans le flux retourné par la méthode GetResponseStream. La propriété ContentLength n'indique pas d'informations sur le nombre d'octets d'en-tête ou de métadonnées retournés par le serveur ; elle indique uniquement le nombre d'octets de données contenus dans la ressource demandée.

ContentType, propriété

La propriété ContentType fournit toutes les informations spéciales que le protocole vous exige d'envoyer au client pour identifier le type de contenu envoyé par le serveur. Il s'agit généralement du type de contenu MIME des données retournées.

Headers, propriété

La propriété Headers contient une collection arbitraire de paires nom/valeur de métadonnées associées à la réponse. Toutes les métadonnées nécessaires au protocole et pouvant être exprimées sous la forme d'une paire nom/valeur peuvent être incluses dans la propriété Headers.

Vous n'êtes pas obligé de vous servir de la propriété Headers pour utiliser les métadonnées d'en-tête. Les métadonnées spécifiques au protocole peuvent être exposées en tant que propriétés ; par exemple, la propriété HttpWebResponse.LastModified expose l'en-tête HTTP Last-Modified. Lorsque vous exposez des métadonnées d'en-tête en tant que propriété, vous ne devez pas permettre à la même propriété d'être définie à l'aide de la propriété Headers.

ResponseUri, propriété

La propriété ResponseUri contient l'URI de la ressource qui a réellement fourni la réponse. Pour les protocoles qui ne prennent pas en charge la redirection, ResponseUri est identique à la propriété RequestUri de l'instance de WebRequest qui a créé la réponse. Si le protocole prend en charge la redirection de la demande, ResponseUri contient l'URI de la réponse.

Méthode Close

La méthode Close ferme toutes les connexions que la demande et la réponse ont établies et nettoie les ressources utilisées par la réponse. La méthode Close ferme toutes les instances de flux utilisées par la réponse, mais ne lève pas d'exception si le flux de réponse a été précédemment fermé par un appel à la méthode Stream.Close.

GetResponseStream, méthode

La méthode GetResponseStream retourne un flux contenant la réponse de la ressource demandée. Le flux de réponse contient uniquement les données retournées par la ressource ; tous les en-têtes ou les métadonnées éventuellement inclus dans la réponse doivent en être enlevés et exposés à l'application par le biais des propriétés spécifiques au protocole ou de la propriété Headers.

L'application est propriétaire de l'instance de flux retournée par la méthode GetResponseStream ; l'instance peut donc être fermée sans pour autant fermer WebResponse. Par convention, l'appel de la méthode WebResponse.Close ferme également le flux retourné par GetResponse.

Voir aussi

Programmation de protocoles enfichables | Dérivation à partir de WebRequest | WebResponse, classe | HttpWebResponse, classe | FileWebResponse, classe