gpt4 book ai didi

java - ehcache SimpleCachingHeadersPageCachingFilter 添加 X-XSS-Protection 和 X-Content-Type-Options

转载 作者:行者123 更新时间:2023-12-01 15:43:13 25 4
gpt4 key购买 nike

我在 web.xml 中配置了 SimpleCachingHeadersPageCachingFilter 并且它工作正常,但是我如何向 header 添加其他一些内容,例如:

X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block

我去了http://ehcache.org/documentation/user-guide/web-caching欲了解更多信息,但没有运气。

最佳答案

一切都在代码和 JavaDocs 中。对于初学者,我将扩展 SimpleCachingHeadersPageCachingFilter 并覆盖 buildPage():

public class CustomHeadersPageCachingFilter extends SimpleCachingHeadersPageCachingFilter {

@Override
protected PageInfo buildPage(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws AlreadyGzippedException, Exception {
PageInfo pageInfo = super.buildPage(request, response, chain);
headers.add(new Header<String>("X-Content-Type-Options", "nosniff"));
headers.add(new Header<String>("X-XSS-Protection", "1; mode=block"));
return pageInfo;
}
}

但是我们要重写的方法的 JavaDoc 指出:

To control your own caching headers, use {@link SimplePageCachingFilter}.

SimplePageCachingFilterSimpleCachingHeadersPageCachingFilter 的基类,目前正在扩展。不过,我认为如果我们想使用完全不同的 header ,此评论建议使用前一个类。如果我们想保留标准 header (由后一个类通过 super.buildPage() 添加),这种方法似乎是有效的。

免责声明:请注意,通过首先调用 super 版本并添加一些逻辑来扩展类并覆盖某些方法来扩展类的行为并不是最好的面向对象技术。

关于java - ehcache SimpleCachingHeadersPageCachingFilter 添加 X-XSS-Protection 和 X-Content-Type-Options,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7652554/

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