HttpWebRequest.Timeout Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o valor de tempo limite em milissegundos para os métodos GetResponse() e 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
Valor da propriedade
O número de milissegundos a aguardar antes do tempo limite da solicitação. O valor padrão é 100.000 milissegundos (100 segundos).
Exceções
O valor especificado é menor que zero e não é Infinite.
Exemplos
O exemplo de código a seguir define a Timeout propriedade do HttpWebRequest objeto .
// 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)
Comentários
Timeout é o número de milissegundos que uma solicitação síncrona subsequente feita com o GetResponse método aguarda uma resposta e o GetRequestStream método aguarda um fluxo. O Timeout se aplica a toda a solicitação e resposta, não individualmente às chamadas de GetRequestStream método e GetResponse . Se o recurso não for retornado dentro do período de tempo limite, a solicitação gerará um WebException com a Status propriedade definida WebExceptionStatus.Timeoutcomo .
A Timeout propriedade deve ser definida antes que o GetRequestStream método ou GetResponse seja chamado. Alterar a Timeout propriedade depois de chamar o GetRequestStream método ou GetResponse não tem efeito
A Timeout propriedade não tem efeito sobre solicitações assíncronas feitas com o BeginGetResponse método ou BeginGetRequestStream .
Cuidado
No caso de solicitações assíncronas, o aplicativo cliente implementa seu próprio mecanismo de tempo limite. Consulte o exemplo no BeginGetResponse método .
Para especificar o tempo de espera antes de uma operação de leitura ou gravação atingir o tempo limite, use a ReadWriteTimeout propriedade .
Uma consulta DNS (Sistema de Nomes de Domínio) pode levar até 15 segundos para retornar ou tempo limite. Se sua solicitação contiver um nome de host que exija resolução e você definir Timeout como um valor inferior a 15 segundos, poderá levar 15 segundos ou mais até que um WebException seja lançado para indicar um tempo limite em sua solicitação.
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários