C# 如何获取网站重定向目标url(最终用户链接)
我有一个将我重定向到另一个网站的URL。我想从C中的原始url获取目标url。是否有任何方法可以遵循这些重定向?您可以使用HttpWebRequest类C# 如何获取网站重定向目标url(最终用户链接),c#,.net,html,redirect,http-redirect,C#,.net,Html,Redirect,Http Redirect,我有一个将我重定向到另一个网站的URL。我想从C中的原始url获取目标url。是否有任何方法可以遵循这些重定向?您可以使用HttpWebRequest类 var request = (HttpWebRequest)WebRequest.Create(someUrl); request.AllowAutoRedirect = false; var response = (HttpWebResponse) request.GetResponse(); if (response.StatusCode
var request = (HttpWebRequest)WebRequest.Create(someUrl);
request.AllowAutoRedirect = false;
var response = (HttpWebResponse) request.GetResponse();
if (response.StatusCode == HttpStatusCode.Found) // Found == 302
{
// Do something...
string newUrl = response.Headers["Location"];
}
此外,您还可以通过设置以下内容自动执行重定向:
request.AllowAutoRedirect = true;
request.MaximumAutomaticRedirections = 4; //number of redirections allowed
相关:您可以使用HttpWebRequest类
var request = (HttpWebRequest)WebRequest.Create(someUrl);
request.AllowAutoRedirect = false;
var response = (HttpWebResponse) request.GetResponse();
if (response.StatusCode == HttpStatusCode.Found) // Found == 302
{
// Do something...
string newUrl = response.Headers["Location"];
}
此外,您还可以通过设置以下内容自动执行重定向:
request.AllowAutoRedirect = true;
request.MaximumAutomaticRedirections = 4; //number of redirections allowed
相关:你有一个URL,你在用它做什么?使用WebRequest?我只需要最终用户链接。我试图将其加载到webbrowser控件,但当我获得当前页面的位置时,它只显示第一个url,而不是目标。您有一个url,您在用它做什么?使用WebRequest?我只需要最终用户链接。我试图将其加载到webbrowser控件,但当我获取当前页面的位置时,它只显示第一个url,而不是target.response.ResponseUri.OriginalString获取我需要的内容。次要提示:我更喜欢强制转换为HttpWebRequest和HttpWebResponse,因为如果对象的类型不正确,as将返回null,您将在下一行得到一个NullReferenceException。最好是在包含problem.response.ResponseUri.OriginalString的行上立即获取InvalidCastException获取我需要的内容。次要缺点:我更喜欢强制转换为HttpWebRequest和HttpWebResponse,因为如果对象的类型不正确,as将返回null,并且在下一行中会得到一个NullReferenceException。最好立即在包含问题的行上获取InvalidCastException。