【发布时间】:2015-06-26 15:09:21
【问题描述】:
我有一个内部正在执行重定向(url)的操作结果方法。我的问题是如何在重定向之前检查 url 是否有效?
public ActionResult RedirectUser()
{
var url = "/Cars/Model/1"; //this is the url
// now i should check if the redirect return a 200 code (the url is valid) and if is valid I should redirect to that url, else i should redirect to "/Home/Index"
if(this.Redirect(url))
{
return this.Redirect(url);
}
else
{
return this.RedirectToAction("Index", "Home");
}
return this.RedirectToAction("Index", "Home");
}
谁能帮我举个例子?我在谷歌上搜索,但找不到任何可以帮助我的东西。谢谢
【问题讨论】:
-
是的,我检查了那个链接。这不是我需要的,因为 Redirect() 方法可以将这种形式的链接作为参数(“/Home/Car/1”)。首先,我认为我可以对那个 url 执行 ping 操作,但我没有主机。
-
如果您的链接不完整,例如“/Home/Car/1”,那么您可以安全地附加您的应用程序 url 基地址
-
为什么需要检查 URL 是否有效?它总是会是一个内部(相对)URL 还是可能是外部的?一种简单的方法是使用 HttpClient 发送获取请求并检查响应状态。
标签: .net asp.net-mvc asp.net-mvc-4 url-redirection