当前位置:编程学习 > C#/ASP.NET >>

HttpWebResponse返回的StatusCode是MovedPermanently,但不会抛出异常

HttpWebResponse返回的StatusCode是MovedPermanently,但不会抛出异常,何解?一般来说返回不是ok的话都会抛出异常,我是通过捕捉异常来实现报警功能的,这样一来报警功能就实现不了了。 --------------------编程问答-------------------- 我也想知道,先帮你DING吧 --------------------编程问答-------------------- 有一个属性,设置是否自动处理30X跳转的。好像叫什么autoredirect什么的。你查查MSDN吧 --------------------编程问答-------------------- 是这个吧?
request.AllowAutoRedirect = false;
已经设置了自动跳转了。  --------------------编程问答-------------------- HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://"+theWebPageList.url);
                request.Method = "HEAD";

                request.AllowAutoRedirect = false;  //设置请求是否应跟随重定向响应
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

禁止了自动跳转 --------------------编程问答-------------------- MovedPermanently

301跳转了

Request有AllowAutoRedirect ,如果设置成true了,会自动转到redirect的页面,并返回。 --------------------编程问答--------------------
引用 5 楼 findcaiyzh 的回复:
MovedPermanently

301跳转了

Request有AllowAutoRedirect ,如果设置成true了,会自动转到redirect的页面,并返回。


已经设置为false了 --------------------编程问答--------------------

 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://tinyurl.com/dbysxp");
 request.AllowAutoRedirect = false;
 HttpWebResponse response = (HttpWebResponse)request.GetResponse();
 string redirUrl = response.Headers["Location"];

 //Show the redirected url
 MessageBox.Show("You're being redirected to: "+redirUrl);


具体http 301的解释,参考wiki:
http://en.wikipedia.org/wiki/HTTP_301 --------------------编程问答-------------------- ……在正常取得Response时,检查一下响应,是不是200,不是就throw一个错误错出来 --------------------编程问答-------------------- 试过将request.AllowAutoRedirect = true;才会抛出异常。 十分神奇……
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,