java - 在您已经写入输出缓冲区之后向响应添加 cookie 是否不正确?

标签 java cookies

我有一个错误,我将 cookie 添加到 HttpServletResponse,但根本没有设置 cookie。

在 jsp 页面已经呈现之后,它被添加到 servlet 过滤器中。它没有被添加的原因是因为它是在一些内容已经写入输出流之后添加的吗?

最佳答案

Cookie 在 HTTP header 中发送,因此您不能在提交响应后添加它们。您可以使用 response.isCommitted() 测试响应是否已提交。通常不会在您将第一个字节写入响应后立即提交响应,而是在您刷新响应或填充响应缓冲区后立即提交。

关于java - 在您已经写入输出缓冲区之后向响应添加 cookie 是否不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5463859/

相关文章:

java - 如何仅在用户登录时执行此代码

javascript - 使用表单输入设置 cookie

java - 通过 jaxb 解码具有属性的 maxOccurs 无界元素

Java-HMACSHA256

java - 如何查看可执行 Jar 正在使用哪个 JVM?

java - 如何用不同的 Unicode 字符构建最长的字符串

cookies - 不同类型的浏览器存储

jquery - 如何在jquery中为对话框设置cookie?

Python - 成功使用 Cookie

jsf - 在 CDI bean 的非请求环境中获取 JSF ServletContext