Dea*_*ses 2 grails servlet-filters
我想修改特定Grails请求的响应内容.如何在请求过滤器中配置ResponseWrapper?
我曾希望它会如下,但响应是一个只读属性:
class MyFilters {
def filters = {
wrapFoo(controller:'foo', action:'bar') {
before = {
response = new MyResponseWrapper(response)
}
[...]
Run Code Online (Sandbox Code Playgroud)
谢谢!
你不能 - Grails过滤器是Spring HandlerInterceptors的包装器,并且比servlet过滤器在处理链中进一步调用.如果要包装响应,则需要使用真正的servlet过滤器.
在src/java或src/groovy中创建实现javax.servlet.Filter并在web.xml中注册它的类,就像在非Grails应用程序中一样.要访问web.xml grails install-templates,请在src/templates/war中运行并编辑该文件