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的页面,并返回。 --------------------编程问答--------------------
已经设置为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#