Saltar al contenido

Obtener el número de código de estado de Http (200, 301, 404, etc.) de HttpWebRequest y HttpWebResponse

Solución:

Console.Write((int)response.StatusCode);

HttpStatusCode (el tipo de response.StatusCode) es una enumeración donde los valores de los miembros coinciden con los códigos de estado HTTP, p. ej.

public enum HttpStatusCode
{
    ...
    Moved = 301,
    OK = 200,
    Redirect = 302,
    ...
}

Debe tener cuidado, las respuestas del servidor en el rango de 4xx y 5xx arrojan una WebException. Debe detectarlo y luego obtener el código de estado de un objeto WebException:

try
{
    wResp = (HttpWebResponse)wReq.GetResponse();
    wRespStatusCode = wResp.StatusCode;
}
catch (WebException we)
{
    wRespStatusCode = ((HttpWebResponse)we.Response).StatusCode;
}

Según ‘dtb’, debe usar HttpStatusCode, pero después de ‘zeldi’ debe tener mucho cuidado con las respuestas de código> = 400.

Esto me ha funcionado:

HttpWebResponse response = null;
HttpStatusCode statusCode;
try
{
    response = (HttpWebResponse)request.GetResponse();
}
catch (WebException we)
{
    response = (HttpWebResponse)we.Response;
}

statusCode = response.StatusCode;
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
sResponse = reader.ReadToEnd();
Console.WriteLine(sResponse);
Console.WriteLine("Response Code: " + (int)statusCode + " - " + statusCode.ToString());
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *