Sto lavorando con un proxy che richiede l'autenticazione, ad esempio, in un browser, se provo ad aprire una pagina, verrà richiesto immediatamente le credenziali. Ho fornito le stesse credenziali nel mio programma ma fallisce con l'errore HTTP 407.Autenticazione base proxy in C#: errore HTTP 407
Ecco il mio codice:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
IWebProxy proxy = WebRequest.GetSystemWebProxy();
CredentialCache cc = new CredentialCache();
NetworkCredential nc = new NetworkCredential();
nc.UserName = "userName";
nc.Password = "password";
nc.Domain = "mydomain";
cc.Add("http://20.154.23.100", 8888, "Basic", nc);
proxy.Credentials = cc;
//proxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
request.Proxy = proxy;
request.Proxy.Credentials = cc;
request.Credentials = cc;
request.PreAuthenticate = true;
Ho provato ogni cosa possibile, ma sembrare come mi manca qualcosa. È qualcosa del genere, devo fare due richieste? Innanzitutto senza le credenziali e una volta che ho ricevuto una risposta dal server sulla necessità di credenziali, effettua la stessa richiesta con le credenziali?
Quale schema di autenticazione richiede il server proxy? Di base? NTLM? –
di base, è per questo che ho usato Basic nella cache dei cred ... – rplusg