HttpWebRequest.Timeout Vlastnost

Definice

Získá nebo nastaví hodnotu časového limitu v milisekundách pro GetResponse() metody a 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

Hodnota vlastnosti

Počet milisekund, které se mají počkat, než vyprší časový limit požadavku. Výchozí hodnota je 100 000 milisekund (100 sekund).

Výjimky

Zadaná hodnota je menší než nula a není Infinite.

Příklady

Následující příklad kódu nastaví Timeout vlastnost objektu 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)

Poznámky

Timeout je počet milisekund, který následný synchronní požadavek provedený metodou GetResponse čeká na odpověď a GetRequestStream metoda čeká na datový proud. Platí Timeout pro celý požadavek a odpověď, nikoli jednotlivě pro GetRequestStream volání metody a GetResponse . Pokud se prostředek nevrátí během časového limitu, požadavek vyvolá chybu s Status vlastností nastavenou WebException na WebExceptionStatus.Timeout.

Vlastnost Timeout musí být nastavena před zavolání GetRequestStream metody nebo GetResponse . Timeout Změna vlastnosti po volání GetRequestStream metody nebo GetResponse nemá žádný vliv

Vlastnost Timeout nemá žádný vliv na asynchronní požadavky prováděné pomocí BeginGetResponse metody nebo BeginGetRequestStream .

Upozornění

V případě asynchronních požadavků klientská aplikace implementuje vlastní mechanismus časového limitu. Podívejte se na příklad v BeginGetResponse metodě.

Pokud chcete určit dobu čekání, než vyprší časový limit operace čtení nebo zápisu ReadWriteTimeout , použijte vlastnost .

Vrácení dotazu DNS (Domain Name System) nebo vypršení časového limitu může trvat až 15 sekund. Pokud váš požadavek obsahuje název hostitele, který vyžaduje překlad, a nastavíte Timeout hodnotu kratší než 15 sekund, může trvat 15 sekund nebo déle, než WebException se vyvolá vypršení časového limitu vaší žádosti.

Platí pro

Viz také