我自己解决了这个问题,但是我花了很长时间才发现这样一个简单的解决方案,我认为它值得记录在这里.
我有一个典型的Spring 3 MVC设置与InternalResourceViewResolver:
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/" />
<property name="suffix" value=".jsp" />
</bean>
Run Code Online (Sandbox Code Playgroud)
我的控制器中有一个非常简单的处理程序方法,但我为此示例更简化了它:
@RequestMapping("/groups")
public String selectGroup() {
return "redirect:/";
}
Run Code Online (Sandbox Code Playgroud)
问题是,如果我浏览https://my.domain.com/groups,我最终会在http://my.domain.com/重定向后结束.(实际上,我的负载均衡器会将所有http请求重定向到https,但这只会导致打开此类警报的人员出现"正在离开/进入安全连接"类型的多个浏览器警报.)
所以问题是:当原始请求使用时,如何重新定向到https?
injectGroovy 中的方法实际上做了什么?我用谷歌搜索,并没有找到确切的答案.任何人都可以通过一个简单的例子来指定它