Je ne sais pas ce qui manque dans mon code.Quel est le problème avec mon HttpWebRequest
Si j'appelle un 404 url mon code obtenir une exception.
HttpWebRequest req = WebRequest.Create(args.Url) as HttpWebRequest;
req.AllowAutoRedirect = true;
req.Timeout = args.TimeOut;
req.UserAgent = args.UserAgent;
HttpWebResponse answer = req.GetResponse() as HttpWebResponse;
objResult.Status =answer.StatusCode;
Stream stream = answer.GetResponseStream();
je reçois une exception sur req.GetResponse()
Il est l'erreur que je reviens
Le serveur distant a renvoyé une erreur: (404) Introuvable.
Je ne suis pas supposé recevoir HttpStatusCode.NotFound?
La solution:
try
{
HttpWebRequest req = WebRequest.Create(args.Url) as HttpWebRequest;
req.AllowAutoRedirect = true;
req.Timeout = args.TimeOut;
req.UserAgent = args.UserAgent;
HttpWebResponse answer = req.GetResponse() as HttpWebResponse;
objResult.Status =answer.StatusCode;
}
catch (WebException ex)
{
HttpWebResponse response = ex.Response as HttpWebResponse;
objResult.Status = response.StatusCode;
}
Quelle URL touchez-vous? – McKay
Vérifiez la valeur de args.Url. – Tim
Probablement [cette réponse] [1] ici répond également à votre question. [1]: http://stackoverflow.com/questions/1949610/c-how-can-i-catch-a-404 –