【问题标题】:Akka-http streaming using Slick 3.0 Databasepublisher使用 Slick 3.0 Databasepublisher 的 Akka-http 流式传输
【发布时间】:2015-06-21 17:03:18
【问题描述】:

我正在使用 slick 3.0 并且有一个 databasepublisher 对象

def getAsStream = db.stream[Entity](tblquery.result)

我正在使用 akka-http 作为 rest 层,如下所示,

val route = 
path("stream"){
 get {
    complete { // how to stream from here  }
  }
}

如何使用这个 databasepublisher 对象来转换(json)并将每一行流式传输到客户端。请帮忙。

【问题讨论】:

  • Sick 返回一个 ReactiveStream 发布者。所以这更像是一个 akka 问题,而不是一个 Slick 问题。仅供参考。

标签: scala akka slick akka-stream akka-http


【解决方案1】:

我终于做了这样的事情,不知道是不是这样,

 complete {
       val source = Source(repository.getAsStream).map(a => ChunkStreamPart(a.asJson))
       HttpResponse(entity = HttpEntity.Chunked(MediaTypes.`application/json`, source))
         }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2023-04-01
    • 1970-01-01
    • 2017-11-12
    • 2012-10-20
    • 2016-06-20
    • 2016-06-01
    相关资源
    最近更新 更多