我知道我们可以这样做:
<session-config>
<cookie-config>
<secure>true</secure>
</cookie-config>
</session-config>
但我想要实现的是根据某些配置设置此标志(true或false)。
我们应该使用过滤器吗?
由于
答案 0 :(得分:5)
假设您处于servlet 3.0+环境中,并且您不想使用web.xml
指定cookie-secure-flag但是以编程方式设置它:
实施ServletContextListener并在web.xml
或通过注释注册
在其contextInitialized
方法中,从您的配置中评估您的安全标记并将其设置在SessionCookieConfig
上:
public void contextInitialized(ServletContextEvent sce) {
boolean secure = ...
sce.getServletContext().getSessionCookieConfig().setSecure(secure);
}