我正在调试一些代码,并且有这个检查(在ASP.NET MVC控制器中)
if (Url.IsLocalUrl(returnUrl))
所以我查看了文档并说明了 返回一个值,指示URL是否为本地。
但是这意味着什么,'网址是本地的?
如果我点击了网络服务器,那么网络服务器何时会说“网址是本地的”? ?
答案 0 :(得分:3)
在ASP.NET MVC博客Preventing Open Redirection Attacks (C#)中,您可以找到解释为什么要使用它的解释,但是,正如MVC文档的传统一样,它没有解释它是如何工作的。
您可以从其中提供的来源中读取它:它会检查URL是以/
还是~/
开头,这意味着:它是否是相对URL,从而指向同一个域。