使用Jerkson时维护JSON的前导和尾随引号的字符串

使用Jerkson时维护JSON的前导和尾随引号的字符串,json,scala,playframework-2.0,jackson,jerkson,Json,Scala,Playframework 2.0,Jackson,Jerkson,有问题的JSON: { "search_id": "", "type": "Search.filter", "query": "bar,club", "params": { "search_id": "", "user_id": "", "client": "ios", "lat": 40.73199375351, "lon": -74.00080404533901, "radius": 20 } } 检索数据的代码: val json = Js

有问题的JSON:

{
"search_id": "",
"type": "Search.filter",
"query": "bar,club",
"params": {
    "search_id": "",
    "user_id": "",
    "client": "ios",
    "lat": 40.73199375351,
    "lon": -74.00080404533901,
    "radius": 20
}
}

检索数据的代码:

val json = Json.parse(new String(body))
println((json \ "search_id") + " | " + (json \ "query"))
println(json)
只打印json JsValue会按预期打印出整个json。打印出第一项会产生:“|”酒吧、俱乐部

为什么要维护JSON格式中的引号?这不是字符串的一部分,它基本上是说引号中的内容是一个字符串。如何解决此问题?

根据,您应该将
.as[sometype]
(不安全转换)或
asOpt[sometype]
(安全)调用

println((json \ "search_id").as[String] + " | " + (json \ "query").as[String])