【问题标题】:Redirect to an external URL in Spring MVC [duplicate]重定向到 Spring MVC 中的外部 URL [重复]
【发布时间】: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.comhttps://www.yahoo.com 但我希望它按照指定的方式重定向 URL,而不必提及协议。例:yahoo.com 类似http://www.yahoo.com,直接进入地址栏即可。

谢谢

【问题讨论】:

    标签: java spring jsp spring-mvc


    【解决方案1】:

    如果主机与当前主机不同,则需要该协议

    String redirectUrl = "http://www.yahoo.com";
    return "redirect:" + redirectUrl;
    

    看看Spring Web MVC frameworkredirect: prefix部分

    诸如redirect:/myapp/some/resource 之类的逻辑视图名称将相对于当前Servlet 上下文进行重定向,而诸如redirect:http://myhost.com/some/arbitrary/path 之类的名称将重定向到绝对URL。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-31
      • 1970-01-01
      • 2020-07-23
      • 2014-06-20
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 2019-01-14
      相关资源
      最近更新 更多