Java EE 过滤器无法获取 cookie?

标签 java servlets cookies jakarta-ee servlet-filters

为什么不能从 servlet 过滤器中引用 cookie?我似乎无法理解 Java EE 不允许您清理 cookie 值:

public void doFilter(ServletRequest request, ServletResponse response, 
                             FilterChain chain) 
                             throws ServletException, IOException {
    request.
}

ServletRequest 不支持 getCookies(HttpServletRequest 就是这种情况)。

最佳答案

为了获取 cookie,您需要将其转换为 HttpServletRequest

HttpServletRequest httpReq = (HttpServletRequest) request;

ServletResponse 类不支持 cookie 的原因是 ServletRequest 中的协议(protocol)不一定是 http,你不能确定有 Cookie。 Cookie 是一种 Http 的东西。

关于Java EE 过滤器无法获取 cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1173765/

相关文章:

python - 我可以/如何通过 websocket 连接到扭曲的应用程序来访问客户端 cookie?

java - Maven编译 "Cannot find symbol"

java - Spring PetClinic 和 HttpRequest session

java - 使用谷歌应用引擎将文件上传到 blobstore 时出现 http 400 错误

java - 有没有办法使用 Tomcat API 从应用程序内部重新启动 webapp?

java - 如何从 servlet 中清除浏览器缓存?

internet-explorer - 在某些浏览器中登录时未设置 ExpressionEngine session cookie

java - 如何使用 Java 将 pdf 文件转换为 word 文件

java - 异常 : Code refactoring and best design (protected or getter/setter)

javascript - 在网站的所有页面中保留用户选择的背景