remarks generate excepciones example ejemplos crear c# httpclient

generate - params comments c#



¿Qué excepciones puede lanzar HttpClient? (1)

Estoy usando HttpClient en un proyecto de formularios xamarin

La clase está documentada, pero no puedo encontrar ninguna documentación sobre las excepciones que sus métodos podrían lanzar.

Por ejemplo, el Método GetAsync no tiene ninguna documentación sobre posibles excepciones. Pero supongo que se lanza, por ejemplo, cuando el servidor es inalcanzable.

¿Hay algún lugar en la lista de excepciones que esta clase pueda lanzar?


Como otros lo han comentado, depende de lo que esté llamando con HttpClient. Sin embargo, entiendo lo que usted quiso decir, y aquí hay algunas excepciones lanzadas con las llamadas a métodos típicos.

SendAsync puede lanzar:

  • ArgumentNullException La solicitud fue nula.
  • InvalidOperationException El mensaje de solicitud ya fue enviado por la instancia de HttpClient.
  • HttpRequestException La solicitud falló debido a un problema subyacente, como la conectividad de la red, la falla del DNS, la validación del certificado del servidor o el tiempo de espera.
  • TaskCanceledException La solicitud agotó el tiempo de espera o el usuario canceló la Task la solicitud .

https://msdn.microsoft.com/en-us/library/hh138176(v=vs.110).aspx

De GetAsync similar, GetAsync PostAsync PutAsync GetStringAsync GetStreamAsync etc. puede lanzar ArgumentNullException , HttpRequestException y como se ha indicado anteriormente (pero no InvalidOperationException ).

https://msdn.microsoft.com/en-us/library/hh158944(v=vs.110).aspx

Una vez que haya llamado a SendAsync o GetAsync etc., tendrá una Task<HttpResponseMessage> . Una vez que estoy esperando, tiendo a llamar a EnsureSuccessStatusCode() para lanzar una HttpRequestException si se devuelve un código de estado HTTP no exitoso. https://github.com/dotnet/corefx/blob/master/src/System.Net.Http/src/System/Net/Http/HttpResponseMessage.cs#L161