2013-12-23 40 views
0

我的ISP开始通过一个网页需要身份验证,我第一次得到连接英寸Web代理认证

我想创建一个程序来检查我的网络状态,并告诉我,如果我已经认证或不认证。如果没有,我希望它通过该登录表单自动连接(或任何其他更敏捷的方式)。

使用C#,我试图打开一个新的WebRequest并导航,但Respose状态是200,因为我没有连接时被重定向到该登录页面。

关于如何做到这一点的任何想法?在C#或Java中的例子会非常好!

更新:正被用来测试在webResp 3xx应答状态

 HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create("http://google.com.br"); 
     webReq.AllowAutoRedirect = false; 
     HttpWebResponse webResp = (HttpWebResponse)webReq.GetResponse(); 

     using (StreamReader reader = new StreamReader(webResp.GetResponseStream())) 
     { 
      Console.Write(reader.ReadToEnd()); 
     } 

代码对象的状态代码总是200

感谢。

回答

1

AllowAutoRedirect property设置为false,然后检查3xx状态码。

+0

试图更改此选项并再次发送Web请求,但以任何方式返回200 ...这很奇怪。可能是一些路由器配置? – Andrey

+0

响应体是什么?比较Fiddler中的请求。 – SLaks

+0

在小提琴手的回报是302移动(如预期),但在代码中,它仍然返回200.请看看我的代码,看看它的错误(在上面的主要问题更新)。 – Andrey