任何人都知道如何在应用引擎上使用 httponly cookie 进行会话和 cookie 吗?
在 Cookie 类的 javadoc 中,http://java.sun.com/javaee/6/docs/api/javax/servlet/http/Cookie.html#setHttpOnly(boolean)中有一个 setHttpOnly 方法。
不过,在为应用引擎开发时尝试使用它时出现编译器错误。
该方法是在 Servlet 3.0 规范中引入的,所以它很新。
任何人都知道如何在应用引擎上使用 httponly cookie 进行会话和 cookie 吗?
在 Cookie 类的 javadoc 中,http://java.sun.com/javaee/6/docs/api/javax/servlet/http/Cookie.html#setHttpOnly(boolean)中有一个 setHttpOnly 方法。
不过,在为应用引擎开发时尝试使用它时出现编译器错误。
该方法是在 Servlet 3.0 规范中引入的,所以它很新。
App Engine 支持 2.5 版的 Servlet API,因此您不能使用 setHttpOnly 方法。
您可以尝试自己输出 cookie 标头。
resp.setHeader("Set-Cookie", "A=7; expires=Fri, 31-Dec-2010 23:59:59 GMT; path=/; domain=.example.net; HttpOnly");
自 2017 年以来,GAE 确实支持 servlet API 3.1,所以我在 web.xml 中测试了以下 cookie 选项,它可以工作:
<session-config>
<cookie-config>
<http-only>true</http-only>
</cookie-config>
</session-config>