简体   繁体   English

request-filter-servlet-jsp链中的响应

[英]Response in the request-filter-servlet-jsp chain

I wrote a filter, but the result response does not contain the specified header. 我写了一个过滤器,但结果响应不包含指定的标头。
Is the final response is the same response, which was modified in the filter? 最终响应是否与在过滤器中修改过的响应相同?
What I need to modify to get a correct result? 我需要修改以获得正确的结果吗?

import javax.servlet.Filter;//...

public class HeaderFilter implements Filter {//...
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
        throws IOException, ServletException {
    filterChain.doFilter(servletRequest, servletResponse);
    HttpServletResponse response = (HttpServletResponse) servletResponse;
    response.setHeader("X-Frame-Options", "domain.com");
}//...
}

"You are trying to set header after the Servlet has been executed. “您正在尝试执行Servlet之后设置标头。
Please try setting the header before the doFilter method call. 请尝试在doFilter方法调用之前设置标头。
Just move the last two lines up above the doFilter line." 只需将最后两行移到doFilter行上方即可。”
That is the solution. 那是解决方案。
Thank you! 谢谢!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM