我目前正在创建一个应用程序,其中我使用如下代码:
session.user = user.username
因此,我创建了JSESSIONID
饼干。但我希望我的客户端程序读取这个 cookie;但是由于它被设置为HttpOnly
true
我无法从客户端获得价值。
应该如何更改cookie Httponly以在圣杯中设置false?以便客户端代码可以读取它们?
谢谢。
httpOnly
设置不是 Grails 选项,而是运行应用程序的容器的一个选项(示例中为 Tomcat)。因此,这些变化与Tomcat的关系将超过Grails。
通常,Grails在编译/运行时为Tomcat创建web.xml
,虽然您可以使用BuildConfig.groovy
中的eventConfigureTomcat
来配置Tomcat,但这仅适用于开发和测试环境,而不适用于生产环境。
因此,最好使用安装模板并修改src/templates/war/web.xml
,以便为 httpOnly
属性提供正确的值。 <Context httpOnly="false" ...
您可以从他们的官方文档中找到有关配置 Tomcat 的更多信息。