首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在检测302重定向

正在检测302重定向
EN

Stack Overflow用户
提问于 2011-06-29 17:39:26
回答 3查看 1K关注 0票数 0

我正在尝试检查url的重定向位置,但总是得到错误的结果。例如,对于url,它重定向到http://www.lotus-air.com,找到的重定向类型为302 (您可以在此服务的http://www.internetofficer.com/seo-tool/redirect-check/上测试它),但是我将"http://mobile.yellowpages.com.eg/“作为webResp.GetResponseHeader("Location")。我的代码如下:

代码语言:javascript
复制
        string url = @"http://www.yellowpages.com.eg/Mjg3NF9VUkxfMTEwX2h0dHA6Ly93d3cubG90dXMtYWlyLmNvbV8=/Lotus-Air/profile.html";


        HttpWebRequest webReq = WebRequest.Create(url) as HttpWebRequest;
        webReq.Method = "HEAD";
        webReq.AllowAutoRedirect = false;
        HttpWebResponse webResp = webReq.GetResponse() as HttpWebResponse;
        txtOutput.Text += webResp.StatusCode.ToString() + "\r\n" ;
        txtOutput.Text += webResp.GetResponseHeader("Location") + "\r\n";
        txtOutput.Text += webResp.ResponseUri.ToString();

        webResp.Close();

谢谢。

耶伊亚

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-29 17:59:28

正如Ben指出的,它基于用户代理进行重定向。只需添加一些用户代理(此代理用于chrome):

代码语言:javascript
复制
webReq.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13";

对我来说,它会重定向到http://www.lotus-air.com

票数 1
EN

Stack Overflow用户

发布于 2011-06-29 17:48:40

它们可能会根据用户代理发送不同的重定向,因此您在浏览器中会得到一个结果,而在代码中会得到另一个结果。

票数 3
EN

Stack Overflow用户

发布于 2011-06-29 17:57:36

您可以使用HTTP调试代理来了解来回移动的头,并允许您更改用户代理以帮助测试Ben的理论(我+1'd )。

一个很好的例子是Fiddler - Web Debugging Proxy免费且易于使用。

下面的屏幕截图显示了我将用户代理更改为旧的IEMobile用户代理"Mozilla/4.0 (compatible;MSIE6.0;Windows CE;IEMobile 6.12;en-US;KIN.Two 1.0)",它将我重定向到mobile.yellowpages.com.eg

注:切换到ipad用户代理会将您带到iphone.yellowpages.com.eg

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6518584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档