如何解析包含“=”以外的运算符的喷涂路由中的参数?

时间:2016-11-28 09:43:53

标签: scala spray

如何解析包含=以外的运算符的喷涂路由中的参数?

例如,考虑:

http://example.com?a=xyz&b<12 ?

这里存在两个查询参数。一个是a=xyz,另一个是b<12

我想知道在喷涂路由中是否有任何方法可以在b<12中提取parametermap,因为它只包含那些包含=运算符的参数?

1 个答案:

答案 0 :(得分:2)

您可以使用parameterMap directive并从密钥中提取它:

val route = path("test") {
  get {
    parameterMap { 
      map: Map[String, String] =>
        // Extract elements from map
    }
  }
}

请注意,您的密钥将显示为b<13,并将空字符串作为值,因此您需要提取密钥并手动解析。