Pergunta

Eu estou fazendo um post httpwebrequst, mas no HttpWebResponse im recebendo um código de erro 403 proibido. Agora que o erro is not muito usar completo para mim.

Então eu tentei um testprogram (que eu não tenho o código fonte para :() e é usado para fazer o mesmo cargo, e ele voltou com um código 403 proibido, mas também me disse era necessário tha SSL. Então, é possível obter mais "serverside" detalhes a partir de uma falha httpwebrequest que apenas o errorcode?

obrigado


Apenas para esclarecer as coisas. Sua multa que im recebendo o 403, eu só estava me perguntando por que o programa de teste poderia dizer que SSL que o SSL foi necessário quando eu posso ver nada assim na WebException

Foi útil?

Solução

Se um WebException é acionada por causa de um erro de protocolo, a sua resposta propriedade conterá a resposta real recebido da web servidor.

try 
{
    // Do WebRequest
}
catch (WebException ex) 
{
    if (ex.Status == WebExceptionStatus.ProtocolError) 
    {
        HttpWebResponse response = ex.Response as HttpWebResponse;
        if (response != null)
        {
            // Process response
        }
    }
}

Outras dicas

Não há uma maneira explícita para pedir informações mais detalhadas, não -., Basicamente, ya conseguir o que você aprendeu

Dito isso, servidores Web, muitas vezes devolver os documentos, juntamente com os códigos de erro que às vezes contêm informações úteis, bem como o que você tem de explicar o problema com o certificado SSL. Para obter ajuda farejar problemas como este, veja Fiddler - ele vai mostrar-lhe quase tudo o que há para saber sobre suas respostas do servidor.

Quanto ao seu erro em particular, é difícil dizer; 403 pode indicar algumas coisas diferentes. Mas se você tem de volta uma resposta indicando que algo que tenha a ver com SSL, você pode apenas estar lidando com um mau ou certificado expirado ( ver esta questão ), ou o servidor pode estar exigindo uma conexão segura, mas não começar um. Você tentou apenas bater o URL diretamente com um navegador da Web, só para ver se você se solicitado com um aviso indicando um problema de certificado, ou qualquer coisa que não seja uma resposta 403 não mediada?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top