WebRequest Classe

Définition

Effectue une demande à un URI (Uniform Resource Identifier). Il s'agit d'une classe abstract.

public ref class WebRequest abstract
public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class WebRequest
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class WebRequest
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
Héritage
WebRequest
Héritage
Dérivé
Attributs
Implémente

Exemples

L’exemple suivant montre comment créer une WebRequest instance et retourner la réponse.

#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Net;
using namespace System::Text;
int main()
{
   
   // Create a request for the URL.   
   WebRequest^ request = WebRequest::Create( "http://www.contoso.com/default.html" );
   
   // If required by the server, set the credentials.
   request->Credentials = CredentialCache::DefaultCredentials;
   
   // Get the response.
   HttpWebResponse^ response = dynamic_cast<HttpWebResponse^>(request->GetResponse());
   
   // Display the status.
   Console::WriteLine( response->StatusDescription );
   
   // Get the stream containing content returned by the server.
   Stream^ dataStream = response->GetResponseStream();
   
   // Open the stream using a StreamReader for easy access.
   StreamReader^ reader = gcnew StreamReader( dataStream );
   
   // Read the content.
   String^ responseFromServer = reader->ReadToEnd();
   
   // Display the content.
   Console::WriteLine( responseFromServer );
   
   // Cleanup the streams and the response.
   reader->Close();
   dataStream->Close();
   response->Close();
}
using System;
using System.IO;
using System.Net;
using System.Text;

namespace Examples.System.Net
{
    public class WebRequestGetExample
    {
        public static void Main ()
        {
            // Create a request for the URL. 		
            WebRequest request = WebRequest.Create ("http://www.contoso.com/default.html");
            // If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
            // Get the response.
            HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
            // Display the status.
            Console.WriteLine (response.StatusDescription);
            // Get the stream containing content returned by the server.
            Stream dataStream = response.GetResponseStream ();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader (dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd ();
            // Display the content.
            Console.WriteLine (responseFromServer);
            // Cleanup the streams and the response.
            reader.Close ();
            dataStream.Close ();
            response.Close ();
        }
    }
}
Imports System.IO
Imports System.Net
Imports System.Text

Namespace Examples.System.Net
    Public Class WebRequestGetExample

        Public Shared Sub Main()
            ' Create a request for the URL. 		
            Dim request As WebRequest = WebRequest.Create("http://www.contoso.com/default.html")
            ' If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials
            ' Get the response.
            Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
            ' Display the status.
            Console.WriteLine(response.StatusDescription)
            ' Get the stream containing content returned by the server.
            Dim dataStream As Stream = response.GetResponseStream()
            ' Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(dataStream)
            ' Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            ' Display the content.
            Console.WriteLine(responseFromServer)
            ' Cleanup the streams and the response.
            reader.Close()
            dataStream.Close()
            response.Close()
        End Sub
    End Class
End Namespace

Remarques

Important

N’utilisez WebRequest pas ou ses classes dérivées pour le nouveau développement. Utilisez plutôt la System.Net.Http.HttpClient classe .

WebRequest est la classe de abstract base pour . Modèle de demande/réponse de NET pour accéder aux données à partir d’Internet. Une application qui utilise le modèle de demande/réponse peut demander des données à partir d’Internet d’une manière indépendante du protocole, dans laquelle l’application fonctionne avec des instances de la WebRequest classe tandis que les classes descendantes spécifiques au protocole effectuent les détails de la requête.

Les demandes sont envoyées à partir d’une application vers un URI particulier, tel qu’une page Web sur un serveur. L’URI détermine la classe descendante appropriée à créer à partir d’une liste de WebRequest descendants inscrits pour l’application. WebRequest Les descendants sont généralement enregistrés pour gérer un protocole spécifique, tel que HTTP ou FTP, mais peuvent être inscrits pour gérer une demande adressée à un serveur ou un chemin d’accès spécifique sur un serveur.

La WebRequest classe lève un WebException lorsque des erreurs se produisent lors de l’accès à une ressource Internet. La Status propriété est l’une WebExceptionStatus des valeurs qui indique la source de l’erreur. Quand Status a WebExceptionStatus.ProtocolErrorla valeur , la Response propriété contient le WebResponse reçu de la ressource Internet.

Étant donné que la WebRequest classe est une abstract classe, le comportement réel des instances au moment de WebRequest l’exécution est déterminé par la classe descendante retournée par Create la méthode . Pour plus d’informations sur les valeurs et exceptions par défaut, consultez la documentation relative aux classes descendantes, telles que HttpWebRequest et FileWebRequest.

Notes

Utilisez la Create méthode pour initialiser de nouvelles WebRequest instances. N’utilisez pas le WebRequest constructeur.

Notes

Si l’application qui crée l’objet WebRequest s’exécute avec les informations d’identification d’un utilisateur Normal, l’application ne pourra pas accéder aux certificats installés dans le magasin de l’ordinateur local, sauf si l’autorisation a été explicitement accordée à l’utilisateur pour le faire.

Notes pour les responsables de l’implémentation

Lorsque vous héritez de WebRequest, vous devez remplacer les membres suivants : Method, RequestUri, ContentLengthHeaders, ContentTypeBeginGetRequestStream(AsyncCallback, Object)EndGetRequestStream(IAsyncResult)GetResponse()PreAuthenticateGetRequestStream()Credentials, et . BeginGetResponse(AsyncCallback, Object)EndGetResponse(IAsyncResult) En outre, vous devez fournir une implémentation de l’interface IWebRequestCreate , qui définit la Create(Uri) méthode utilisée lorsque vous appelez Create(Uri). Vous devez inscrire la classe qui implémente l’interface à l’aide IWebRequestCreate de la RegisterPrefix(String, IWebRequestCreate) méthode ou du fichier de configuration.

Constructeurs

WebRequest()
Obsolète.

Initialise une nouvelle instance de la classe WebRequest.

WebRequest(SerializationInfo, StreamingContext)
Obsolète.

Initialise une nouvelle instance de la classe WebRequest à partir des instances spécifiées des classes SerializationInfo et StreamingContext.

Propriétés

AuthenticationLevel

Obtient ou définit des valeurs indiquant les niveaux d'authentification et d'emprunt d'identité utilisés pour cette demande.

CachePolicy

Obtient ou définit la stratégie de cache de cette demande.

ConnectionGroupName

En cas de substitution dans une classe descendante, obtient ou définit le nom du groupe de connexions pour la demande.

ContentLength

En cas de substitution dans une classe descendante, obtient ou définit la longueur des données de demande envoyées.

ContentType

En cas de substitution dans une classe descendante, obtient ou définit le type de contenu des données de demande envoyées.

CreatorInstance
Obsolète.

En cas de remplacement dans une classe descendante, obtient l'objet de fabrique dérivé de la classe IWebRequestCreate utilisé pour créer l'élément WebRequest instancié pour créer la demande à l'URI spécifié.

Credentials

En cas de substitution dans une classe descendante, obtient ou définit les informations d'identification réseau utilisées pour authentifier la demande auprès de la ressource Internet.

DefaultCachePolicy

Obtient ou définit la stratégie de cache par défaut de cette demande.

DefaultWebProxy

Obtient ou définit le proxy HTTP global.

Headers

En cas de substitution dans une classe descendante, obtient ou définit la collection de paires nom/valeur d’en-tête associées à la demande.

ImpersonationLevel

Obtient ou définit le niveau d'emprunt d'identité pour la demande en cours.

Method

En cas de substitution dans une classe descendante, obtient ou définit la méthode de protocole à utiliser dans cette demande.

PreAuthenticate

En cas de substitution dans une classe descendante, indique si la demande doit être préalablement authentifiée.

Proxy

En cas de substitution dans une classe descendante, obtient ou définit le proxy réseau à utiliser pour accéder à cette ressource Internet.

RequestUri

En cas de substitution dans une classe descendante, obtient l'URI de la ressource Internet associée à la demande.

Timeout

Obtient ou définit le délai d'expiration des demandes en millisecondes.

UseDefaultCredentials

En cas de remplacement dans une classe descendante, obtient ou définit une valeur Boolean qui détermine si les éléments DefaultCredentials sont envoyés avec les demandes.

Méthodes

Abort()

Abandonne la demande.

BeginGetRequestStream(AsyncCallback, Object)

En cas de substitution dans une classe descendante, fournit une version asynchrone de la méthode GetRequestStream().

BeginGetResponse(AsyncCallback, Object)

En cas de substitution dans une classe descendante, démarre une demande asynchrone pour une ressource Internet.

Create(String)
Obsolète.

Initialise une nouvelle instance de WebRequest pour le modèle d'URI spécifié.

Create(Uri)
Obsolète.

Initialise une nouvelle instance de WebRequest pour le modèle d'URI spécifié.

CreateDefault(Uri)
Obsolète.

Initialise une nouvelle instance de WebRequest pour le modèle d'URI spécifié.

CreateHttp(String)
Obsolète.

Initialise une nouvelle instance de HttpWebRequest pour la chaîne d'URI spécifiée.

CreateHttp(Uri)
Obsolète.

Initialise une nouvelle instance de HttpWebRequest pour l'URI spécifié.

CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

En cas de remplacement dans une classe descendante, retourne un élément Stream pour l'écriture de données dans la ressource Internet.

EndGetResponse(IAsyncResult)

En cas de remplacement dans une classe descendante, retourne un élément WebResponse.

Equals(Object)

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

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

Remplit SerializationInfo avec les données nécessaires pour sérialiser l'objet cible.

GetRequestStream()

En cas de remplacement dans une classe descendante, retourne un élément Stream pour l'écriture de données dans la ressource Internet.

GetRequestStreamAsync()

En cas de remplacement dans une classe descendante, retourne un élément Stream pour l'écriture de données dans la ressource Internet sous forme d'opération asynchrone.

GetResponse()

En cas de substitution dans une classe descendante, retourne une réponse à une demande Internet.

GetResponseAsync()

En cas de substitution dans une classe descendante, retourne une réponse à une demande Internet en tant qu'opération asynchrone.

GetSystemWebProxy()

Retourne un proxy configuré avec les paramètres Internet Explorer de l'utilisateur actuellement représenté.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
InitializeLifetimeService()
Obsolète.

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)
Obsolète.

Inscrit un objet IWebRequestCreate.

RegisterPrefix(String, IWebRequestCreate)

Inscrit un descendant de WebRequest pour l'URI spécifié.

ToString()

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

(Hérité de Object)

Implémentations d’interfaces explicites

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

En cas de remplacement dans une classe descendante, remplit une instance de SerializationInfo avec les données nécessaires à la sérialisation de l'élément WebRequest.

S’applique à

Voir aussi