重定向到 Spring MVC 中的外部 URL [重复]
Posted
技术标签:
【中文标题】重定向到 Spring MVC 中的外部 URL [重复]【英文标题】:Redirect to an external URL in Spring MVC [duplicate] 【发布时间】:2013-08-06 15:08:11 【问题描述】:在 Spring Controller Action 中,我使用以下语句重定向到外部 URL:
String redirectUrl = "www.yahoo.com";
return "redirect:" + redirectUrl;
但是,它似乎是在本地重定向 url,而不是用 www.yahoo.com 替换整个地址栏 URL。
例如:通过上述重定向,我的地址栏现在看起来像:
http://localhost/myApp/auth/www.yahoo.com
我该如何解决这个问题?我什至尝试重定向到一个视图,然后让视图重定向 URL,但结果仍然相同。它似乎工作的唯一方法是如果我有http://www.yahoo.com 或https://www.yahoo.com 但我希望它按照指定的方式重定向 URL,而不必提及协议。例:yahoo.com 类似http://www.yahoo.com,直接进入地址栏即可。
谢谢
【问题讨论】:
【参考方案1】:如果主机与当前主机不同,则需要该协议
String redirectUrl = "http://www.yahoo.com";
return "redirect:" + redirectUrl;
看看Spring Web MVC framework的redirect: prefix
部分
诸如redirect:/myapp/some/resource 之类的逻辑视图名称将相对于当前Servlet 上下文进行重定向,而诸如redirect:http://myhost.com/some/arbitrary/path 之类的名称将重定向到绝对URL。
【讨论】:
以上是关于重定向到 Spring MVC 中的外部 URL [重复]的主要内容,如果未能解决你的问题,请参考以下文章