HttpWebRequest.Timeout Propriété

Définition

Obtient ou définit la valeur du délai d’attente exprimée en millisecondes pour les méthodes GetResponse() et GetRequestStream().

public:
 virtual property int Timeout { int get(); void set(int value); };
public override int Timeout { get; set; }
member this.Timeout : int with get, set
Public Overrides Property Timeout As Integer

Valeur de propriété

Int32

Nombre de millisecondes à attendre avant l’expiration de la requête. La valeur par défaut est de 100 000 millisecondes (100 secondes).

Exceptions

La valeur spécifiée est inférieure à zéro et n’est pas Infinite.

Exemples

L’exemple de code suivant définit la Timeout propriété de l’objet HttpWebRequest .

// Create a new 'HttpWebRequest' Object to the mentioned URL.
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( "http://www.contoso.com" ) );
Console::WriteLine( "\nThe timeout time of the request before setting the property is {0} milliseconds.", myHttpWebRequest->Timeout );
// Set the  'Timeout' property of the HttpWebRequest to 10 milliseconds.
myHttpWebRequest->Timeout = 10;
// Display the 'Timeout' property of the 'HttpWebRequest' on the console.
Console::WriteLine( "\nThe timeout time of the request after setting the timeout is {0} milliseconds.", myHttpWebRequest->Timeout );
// A HttpWebResponse object is created and is GetResponse Property of the HttpWebRequest associated with it
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );
// Create a new 'HttpWebRequest' Object to the mentioned URL.
HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create("http://www.contoso.com");
Console.WriteLine("\nThe timeout time of the request before setting the property is  {0}  milliSeconds.",myHttpWebRequest.Timeout);
// Set the  'Timeout' property of the HttpWebRequest to 10 milliseconds.
myHttpWebRequest.Timeout=10;
// Display the 'Timeout' property of the 'HttpWebRequest' on the console.
Console.WriteLine("\nThe timeout time of the request after setting the timeout is {0}  milliSeconds.",myHttpWebRequest.Timeout);
// A HttpWebResponse object is created and is GetResponse Property of the HttpWebRequest associated with it
HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse();
' Create a new 'HttpWebRequest' Object to the mentioned URL.
     Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("http://www.contoso.com"), HttpWebRequest)
     Console.WriteLine(ControlChars.Cr + "The timeout time of the request before setting the property is  {0}  milliSeconds", myHttpWebRequest.Timeout)
    ' Set the  'Timeout' property of the HttpWebRequest to 10 milliseconds.
 myHttpWebRequest.Timeout = 10	
     ' Display the 'Timeout' property of the 'HttpWebRequest' on the console.
     Console.WriteLine(ControlChars.Cr + "The timeout time of the request after setting the timeout is {0}  milliSeconds", myHttpWebRequest.Timeout)
     ' A HttpWebResponse object is created and is GetResponse Property of the HttpWebRequest associated with it 
     Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)

Remarques

Timeout est le nombre de millisecondes qu’une requête synchrone suivante effectuée avec la GetResponse méthode attend une réponse, et la GetRequestStream méthode attend un flux. S’applique Timeout à l’ensemble de la requête et de la réponse, pas individuellement aux appels de méthode et GetResponse aux GetRequestStream appels. Si la ressource n’est pas retournée dans le délai d’attente, la requête lève une WebException valeur avec la Status propriété définie WebExceptionStatus.Timeoutsur .

La Timeout propriété doit être définie avant l’appel de la méthode ou GetResponse de la GetRequestStream méthode. La modification de la propriété après l’appel Timeout de la méthode ou GetResponse l’appel n’a GetRequestStream aucun effet

La Timeout propriété n’a aucun effet sur les requêtes asynchrones effectuées avec la méthode ou BeginGetRequestStream la BeginGetResponse méthode.

Attention

Dans le cas de requêtes asynchrones, l’application cliente implémente son propre mécanisme de délai d’attente. Reportez-vous à l’exemple de la BeginGetResponse méthode.

Pour spécifier la durée d’attente avant l’expiration d’une opération de lecture ou d’écriture, utilisez la ReadWriteTimeout propriété.

Une requête DNS (Domain Name System) peut prendre jusqu’à 15 secondes pour retourner ou expirer. Si votre demande contient un nom d’hôte qui nécessite une résolution et que vous définissez Timeout une valeur inférieure à 15 secondes, cela peut prendre 15 secondes ou plus avant qu’un WebException message ne soit levée pour indiquer un délai d’expiration sur votre demande.

S’applique à

Voir aussi