【问题标题】:Grails: how do I set up a response wrapper in a Grails filter?Grails:如何在 Grails 过滤器中设置响应包装器?
【发布时间】:2011-08-11 10:39:51
【问题描述】:

我想修改特定 Grails 请求的响应内容。如何在请求过滤器中配置 ResponseWrapper?

我希望它是以下内容,但响应是只读属性:

class MyFilters {
    def filters = {
        wrapFoo(controller:'foo', action:'bar') {
            before = {
                response = new MyResponseWrapper(response)
            }
        [...]

谢谢!

【问题讨论】:

    标签: grails servlet-filters


    【解决方案1】:

    您不能 - Grails 过滤器是 Spring HandlerInterceptors 的包装器,并且比 servlet 过滤器在处理链的上游被调用。如果要包装响应,则需要使用真正的 servlet 过滤器。

    在 src/java 或 src/groovy 中创建实现 javax.servlet.Filter 的类,并在 web.xml 中注册它,就像在非 Grails 应用程序中一样。要访问 web.xml,请运行 grails install-templates 并编辑 src/templates/war 中的文件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      相关资源
      最近更新 更多