我正在为我的下一个项目POCing pekko http(akka http)。我从请求主体实体中提取了JSON字符串,但它没有在字符串值上引用。
路由器上的代码片段:
post {
path("account") {
extract(_.request) { request =>
val body = Await.result(request.entity.toStrict(1.second).map(_.data.utf8String), 1.second)
println(body)
complete(...)
}
}
}
字符串
请求:curl -X POST http://localhost:9090/account-d '{“account”:{“name”:“TESTE”}}'
提取的json字符串:{account:{name:TESTE}}
有人知道如何在不删除引号的情况下提取请求体实体吗?
1条答案
按热度按时间7rfyedvj1#
没有什么能阻止你这样做,但是在使用akka-http时,使用Await阻塞并不是一个好的做法。这也会提取原始JSON字符串而不删除引号:
字符串
示例:https://github.com/pbernet/akka_streams_tutorial/blob/70e52e6e769a2779f1a6de744aab3cf4f16a3835/src/main/scala/akkahttp/SampleRoutes.scala#L121
要检查服务器上的请求,您可以在application.conf中设置这些参数,以检测env问题。
型