Pergunta

Quero verificar se uma determinada página é redirecionado ou não. No entanto, sempre que eu tento isso os cabeçalhos eu voltar parecem ser a partir da página redirecionada, não a página inicialmente solicitado (e, em particular, o status é OK em vez do 302 Quero ver).

Existe algo que eu possa definir de modo que não irá seguir automaticamente os redirecionamentos?

WebRequest request = WebRequest.Create(@"http://www.example.com/page.html");
request.Method = "HEAD";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.Redirect)
{
    ...
}
else
{
    MessageBox.Show("HTTP Code: " + response.StatusCode + "\r\n\r\n" + response.StatusDescription);
    return false;
}
Foi útil?

Solução

HttpWebRequest.AllowAutoRedirect

Obtém ou define um valor que indica se o pedido deve acompanhar as respostas de redirecionamento.
...
Se AllowAutoRedirect é definida como false, todas as respostas com um código de status HTTP 300-399 é retornado para o aplicativo.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top