httpOnly标志在spring国际化中不起作用。我在响应头Set-Cookie中设置了HttpOnly标志,如下所示
String sessionid = httpReq.getSession().getId();
httpRes.setHeader("SET-COOKIE", "JSESSIONID=" + sessionid + ";HttpOnly");
除了国际化部分之外,每个地方都工作正常。起诉spring 3版本,servlet容器是tomcat。如何设置
任何人都可以帮忙解决这个问题
先谢谢
答案 0 :(得分:0)
首先设置httpOnly
选项是一种非常糟糕的方式imho(例如你丢失了cookie的路径/域)。您应该使用配置。可以在web.xml中配置如何编写会话cookie。
<session-config>
<cookie-config>
<http-only>true</http-only>
</cookie-config>
</session-config>
如果您是一个不支持Servlet 3.0规范的servlet容器,在大多数情况下都有配置选项来启用它。
对于I18N,您需要配置CookieLocaleResolver
并将cookieHttpOnly
属性设置为true
。
<bean id="localeResolver" class="CookieLocaleResolver">
<property name="cookieHttpOnly" value="true" />
</bean>