Domanda

Sto facendo un post httpwebrequst, ma nel HttpWebResponse im ottenere un codice di errore 403 proibito. Ora che l'errore isnt molto uso completo per me.

Ho poi provato un testprogram (che non ho il codice sorgente per :() e lo ha utilizzato per fare lo stesso posto, ed è tornato con un codice 403 proibito, ma mi ha anche detto tha SSL era necessario. Quindi è possibile per ottenere più "serverside" dettagli di un fallito HttpWebRequest che solo l'errorcode?

grazie


Giusto per chiarire le cose. Il suo fine che im ricevendo il 403, mi stavo chiedendo il motivo per cui il programma di test potrebbe dire che SSL che era necessario SSL quando posso vedere qualcosa di simile nel WebException

È stato utile?

Soluzione

Se un WebException è gettato a causa di un errore di protocollo, la sua risposta Proprietà conterrà la risposta effettiva ricevuto dal web server.

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

Altri suggerimenti

Non è un modo esplicito per chiedere informazioni più dettagliate, no -. In sostanza, ya ottenere cosa ya get

Detto questo, i server Web spesso tornano documenti insieme a quelli codici di errore che a volte contengono informazioni utili, molto simile a quello sei stato spiegare il problema con il CERT SSL. Per informazioni fiutare problemi come questo, controlla Fiddler - vi mostrerò quasi tutto che c'è da sapere sui vostri risposte del server.

Per quanto riguarda l'errore particolare, è difficile da dire; 403 può indicare un paio di cose diverse. Ma se sei tornato una risposta che indica qualcosa a che fare con SSL, si può solo avere a che fare con un certificato cattivo o scaduto ( vedi questa domanda ), o il server può essere che richiede una connessione sicura, ma non ottenere uno. Hai provato semplicemente premendo l'URL direttamente con un browser Web, solo per vedere se si ottiene visualizzato un avviso che indica un problema del certificato, o qualcosa di diverso da un 403 risposta mediata?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top