具有相同名称的多个标头

时间:2015-08-21 12:02:09

标签: scala http-headers spray spray-dsl spray-routing

Spray仅支持通过headerValueByName提取具有给定名称的ONE标头。如何在下面的Spray代码片段中获取名称为“whatever”的所有标头?必须有一些方法来提取标题!?

lazy val myRoute = {
  path("hello") {
    post {
      headerValueByName("whatever") { header =>
      }
    }
  }
} 

1 个答案:

答案 0 :(得分:3)

对于那种情况没有预定义的指令(但是?)。这是一种自己定义它的方法:

def headersByName(name: String): Directive1[List[HttpHeader]] =
  extract(_.request.headers).map(_.filter(_.is(name.toLowerCase)))