从 HttpEntity 获取 json
Fetch the json from HttpEntity
我有一个 akka.http.scaladsl.model.HttpEntity 的对象,看起来像 HttpEntity("application/json", {这里是我的json})
有没有一种方法可以从实体中获取我的 json 而无需任何字符串操作(除了转换为字符串并进行拆分)
您将需要一个 JSON 解析器和 JSON 解析器与 Akka Http 之间的粘合代码 Unmarshaller。
Akka Http 包含 unmarshallers for spray-json library. You can find more unmarshallers in hseeberger/akka-http-json 库。
如果您选择使用 spray-json,伪代码将是
case class MyJson(v1: String, v2: Int)
object JsonProtocol extends DefaultJsonProtocol {
implicit val myFormat = jsonFormat2(MyJson)
}
val resp: Future[MyJson] = Unmarshal(response).to[MyJson]
我有一个 akka.http.scaladsl.model.HttpEntity 的对象,看起来像 HttpEntity("application/json", {这里是我的json})
有没有一种方法可以从实体中获取我的 json 而无需任何字符串操作(除了转换为字符串并进行拆分)
您将需要一个 JSON 解析器和 JSON 解析器与 Akka Http 之间的粘合代码 Unmarshaller。
Akka Http 包含 unmarshallers for spray-json library. You can find more unmarshallers in hseeberger/akka-http-json 库。
如果您选择使用 spray-json,伪代码将是
case class MyJson(v1: String, v2: Int)
object JsonProtocol extends DefaultJsonProtocol {
implicit val myFormat = jsonFormat2(MyJson)
}
val resp: Future[MyJson] = Unmarshal(response).to[MyJson]