微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 测试代理以查看它是否需要身份验证

我有一个代理列表,我想循环并测试,以确保它们正在工作,并测试,以确保他们不需要用户名和密码.

但是,测试似乎没有正常工作.例如,我有一个代理,我知道需要使用用户名和密码,但它以某种方式通过测试.

这是我的示例代码

HttpWebRequest webReq = (HttpWebRequest)System.Net.HttpWebRequest.Create("http://www.google.com");
webReq.Proxy = new WebProxy(proxy);
HttpWebResponse webRes = (HttpWebResponse)webReq.GetResponse();
if (webRes.StatusCode != HttpStatusCode.ProxyAuthenticationrequired)
{

    Stream myStream = webRes.GetResponseStream();
    if (myStream != null)
    {
        success = true;
    }
}

例如,以下代理需要身份验证:“66.60.148.11:3128”.但是,当我运行代码时,webRes.StatusCode返回OK,并传递webRes.StatusCode!= HttpStatusCode.ProxyAuthenticationrequired测试.

任何想法或sugestions感激.

谢谢!

解决方法

我想象通过允许它通过(可以这么说)的代理请求不遵循HTTP标准,不返回407状态代码.您可以通过使用WireShark http://www.wireshark.org/或使用Chromes Developer Tools(Ctrl Shift I)等浏览器调试工具进行数据包嗅探来查看此信息.您还可以通过查看此案例的webRes.StatusCode值来检查返回的状态代码.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐