gpt4 book ai didi

java - 从 doFilter 方法设置 cookie

转载 作者:搜寻专家 更新时间:2023-11-01 03:57:06 24 4
gpt4 key购买 nike

我有一个带有 doFilter 方法的过滤器类。在 doFilter 方法中,我设置了一个 cookie,如下所示

HttpServletResponse httpResp=(HttpServletResponse)servletResponse;
Cookie myCookie=new Cookie("test","");
myCookie.setValue("testValue");
myCookie.setPath("/");
myCookie.setDomain(".mydomain.com");
httpResp.addCookie(myCookie);
filterChain.doFilter(servletRequest,servletResponse);

这应该理想地工作吗?在 httpResp(HttpServletResponse) 对象中设置一个 cookie,然后只转发 servletResponse(ServletResponse) 对象

奇怪的是,cookie 是为某些客户端设置的,但对于其他一些客户端则没有设置 cookie。我检查了客户端浏览器上的 cookie 设置,看起来没问题。

最佳答案

您可以使用 HttpServletResponseWrapper 来启用过滤器以控制对下游过滤器或 servlet 的响应

https://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletResponseWrapper.html

这是包装器的一个很好的解释:https://stackoverflow.com/a/7047298/1676293

关于java - 从 doFilter 方法设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14566073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com