我正在尝试使用WebRequest和具有基本授权的代理连接到网站。当连接到http站点可以正常工作,但是如果我尝试连接到https站点会出现401错误,当我尝试连接到https站点时正在查看网络监视器,不知道为什么Authorization标头不存在。>
已经尝试在代理和WebRequest上同时添加NetworkCredentials,也没有运气。
IWebProxy proxy = new WebProxy("http://proxyaddress:port");
HttpWebRequest conn = (HttpWebRequest)WebRequest.Create(WEBSERVICE_URL);
conn.Method = "GET";
String encoded = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("username:password"));
conn.Headers.Add("Authorization", "Basic " + encoded);
conn.PreAuthenticate = true;
conn.Proxy = proxy;
conn.GetResponse();
答案 0 :(得分:0)
我最近遇到了一个问题,我们的公司代理在发出外部API请求以防止泄漏时剥夺了基本身份验证标头(因为它不安全),唯一的解决方法是为该URL订购开发者代理,以便没有身份验证或拦截的地方。如果您有权访问代理,请尝试将其配置为允许基本身份验证。