WebException.Response Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Recupera la risposta restituita dall'host remoto.
public:
property System::Net::WebResponse ^ Response { System::Net::WebResponse ^ get(); };
public System.Net.WebResponse Response { get; }
public System.Net.WebResponse? Response { get; }
member this.Response : System.Net.WebResponse
Public ReadOnly Property Response As WebResponse
Valore della proprietà
Se una risposta è disponibile dalla risorsa Internet, un'istanza di WebResponse contenente la risposta di errore da una risorsa Internet; in caso contrario, null
.
Esempio
Nell'esempio seguente viene controllata la Status proprietà e viene stampata nella console e StatusCodeStatusDescription dell'istanza sottostante HttpWebResponse .
try
{
// Create a web request for an unknown server (this raises the WebException).
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)(WebRequest::Create( "http://unknown.unknown.com" ));
// Get the associated response for the above request.
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)(myHttpWebRequest->GetResponse());
myHttpWebResponse->Close();
}
catch ( WebException^ e )
{
Console::WriteLine( "This program is expected to throw WebException on successful run." +
"\n\nException Message : " + e->Message );
if ( e->Status == WebExceptionStatus::ProtocolError )
{
Console::WriteLine( "Status Code: {0}", ( (HttpWebResponse^)(e->Response) )->StatusCode );
Console::WriteLine( "Status Description: {0}", ( (HttpWebResponse^)(e->Response) )->StatusDescription );
}
}
catch ( Exception^ e )
{
Console::WriteLine( e->Message );
}
try {
// Create a web request for an invalid site. Substitute the "invalid site" strong in the Create call with a invalid name.
HttpWebRequest myHttpWebRequest = (HttpWebRequest) WebRequest.Create("invalid site");
// Get the associated response for the above request.
HttpWebResponse myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse();
myHttpWebResponse.Close();
}
catch(WebException e) {
Console.WriteLine("This program is expected to throw WebException on successful run."+
"\n\nException Message :" + e.Message);
if(e.Status == WebExceptionStatus.ProtocolError) {
Console.WriteLine("Status Code : {0}", ((HttpWebResponse)e.Response).StatusCode);
Console.WriteLine("Status Description : {0}", ((HttpWebResponse)e.Response).StatusDescription);
}
}
catch(Exception e) {
Console.WriteLine(e.Message);
}
Try
'Create a web request for an invalid site. Substitute the "invalid site" strong in the Create call with a invalid name.
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("invalid site"), HttpWebRequest)
'Get the associated response for the above request.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
myHttpWebResponse.Close()
Catch e As WebException
Console.WriteLine(e.Message)
If e.Status = WebExceptionStatus.ProtocolError Then
Console.WriteLine("Status Code : {0}", CType(e.Response, HttpWebResponse).StatusCode)
Console.WriteLine("Status Description : {0}", CType(e.Response, HttpWebResponse).StatusDescription)
End If
Catch e As Exception
Console.WriteLine(e.Message)
End Try
Commenti
Alcuni protocolli Internet, ad esempio HTTP, restituiscono risposte altrimenti valide che indicano che si è verificato un errore a livello di protocollo. Quando la risposta a una richiesta Internet indica un errore, WebRequest.GetResponse imposta la Status proprietà su WebExceptionStatus.ProtocolError e fornisce il WebResponse che contiene il messaggio di errore nella Response proprietà dell'oggetto WebException generato. L'applicazione può esaminare per WebResponse determinare l'errore effettivo.