从Response中排除特定的HEADERS

时间:2013-02-28 10:54:43

标签: scala playframework-2.0

如何从Response(SimpleResult)中删除标题

代码示例:

def NoCache[A](action: Action[A]): Action[A] = Action(action.parser) { request =>
    action(request) match {
        case s: SimpleResult[_] =>
            s.withHeaders(PRAGMA -> "no-cache")
            // remove all headers with name "ETAG" HERE ??
        case result => result
    }
}

我在文档中没有找到此功能。

感谢。

1 个答案:

答案 0 :(得分:0)

由于SimpleResultResponseHeader都是案例类,因此您可以复制它们以修改标题:

...
val headers = s.header.headers - ETAG + (PRAGMA -> "no-cache")
s.copy(header = s.header.copy(headers = headers))
...