处理301并检查最终URL是否存在

时间:2018-01-22 07:52:22

标签: c# .net httpwebrequest system.net system.web

我正在使用以下代码检查网址是否有效。这适用于大多数网址,但在HTTP 301响应的情况下会产生误报结果。例如,网址http://www.amazon.com包含301重定向到位。 使用此在线工具http://www.urlitor.com时,它会显示HTTP状态 (最终目的地)为200。

我在我的代码中设置了request.AllowAutoRedirect = true;。但它似乎没有按预期工作。请提供建议。

try
            {
                var request = WebRequest.Create(url) as HttpWebRequest;
                request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36";
                request.AllowAutoRedirect = true;
                using (var response = request.GetResponse())
                    return (response as HttpWebResponse).StatusCode == HttpStatusCode.OK;
            }
            catch (Exception)
            {
                return false;
            }

0 个答案:

没有答案