如何将用户重定向到 MVC 中的新网站?重定向将 return url 附加到控制器方法
How to redirect a user to a new website in MVC ? Redirect appends return url to a controller method
我希望将用户重定向到特定的 URL。就我而言,www.madhu.co.in
.
我的控制器操作如下所示:
[HttpPost]
public ActionResult Redirec()
{
return Redirect("www.madhu.co.in");
}
我正在通过 httpPost
呼叫进行调用。
来电网站是http://localhost/home
。
调用此方法后,MVC 尝试重定向到 http://localhost/home/www.madhu.co.in
。
很奇怪
为什么 MVC 将我的外部 URL 附加到基础 url?
但是,当我重新定义包含 http://
的方法时,MVC 重定向到 http://www.madhu.co.in
。
[HttpPost]
public ActionResult Redirec()
{
return Redirect("http://www.madhu.co.in");
}
为什么会出现这种差异?我是否应该始终在 url 前加上 http://
前缀以重定向到新页面?如果不是,它将重定向到控制器中的 action method
?
一脸懵逼。有什么见解吗?
任何没有协议 (http://
) 或正斜杠 (/
) 的 URL 都被视为亲戚 URL。如果它以 www
开头并不重要,那只是被认为是一个任意子域。
由于它被认为是相对的,因此它会附加到您现有 URL 的结尾的开头。因此,为了重定向到站点外,您需要一个完全限定的绝对 URL.
我希望将用户重定向到特定的 URL。就我而言,www.madhu.co.in
.
我的控制器操作如下所示:
[HttpPost]
public ActionResult Redirec()
{
return Redirect("www.madhu.co.in");
}
我正在通过 httpPost
呼叫进行调用。
来电网站是http://localhost/home
。
调用此方法后,MVC 尝试重定向到 http://localhost/home/www.madhu.co.in
。
很奇怪
为什么 MVC 将我的外部 URL 附加到基础 url?
但是,当我重新定义包含 http://
的方法时,MVC 重定向到 http://www.madhu.co.in
。
[HttpPost]
public ActionResult Redirec()
{
return Redirect("http://www.madhu.co.in");
}
为什么会出现这种差异?我是否应该始终在 url 前加上 http://
前缀以重定向到新页面?如果不是,它将重定向到控制器中的 action method
?
一脸懵逼。有什么见解吗?
任何没有协议 (http://
) 或正斜杠 (/
) 的 URL 都被视为亲戚 URL。如果它以 www
开头并不重要,那只是被认为是一个任意子域。
由于它被认为是相对的,因此它会附加到您现有 URL 的结尾的开头。因此,为了重定向到站点外,您需要一个完全限定的绝对 URL.