【问题标题】:Scala & Play: stream files to S3 using iterateesScala & Play:使用迭代器将文件流式传输到 S3
【发布时间】:2018-05-05 00:22:09
【问题描述】:

想法:创建一个端点,从客户端接收文件流并将其“转发”到 S3,而不是先将其保存到磁盘。

CLIENT ---> Play ---> S3

我知道这可以通过构建自定义 BodyParser 使用 Iteratees 和 Enumerators 来实现。

对此有很多问题,最近的两个问题是thisthis

不幸的是,从编写 BodyParser 到将其连接到 Action 端点,所有现有问题都没有显示端到端的解决方案。有人可以帮忙吗?

【问题讨论】:

  • 您使用的是哪个版本的Play2.3.x 还是 2.4.x?答案还取决于您如何从客户端获取流。如果您可以发布一些代码直到您拥有字节流,那么回答会容易得多。你是通过另一个 http 调用得到的吗?
  • 这个问题太宽泛了。您应该尝试从链接的问题中获取信息,进行尝试,然后返回特定的问题或问题。

标签: scala amazon-s3 playframework streaming iterate


【解决方案1】:

Play Iteratees 已移至 standalone project 与最新版本的 Play 2.6.x。虽然通过将Alpakka S3 连接器与 Play 的 Accumulator 结合使用,可以轻松实现将文件流式传输到 S3。

有关 Alpakka 的 S3 连接器的详细信息,请参阅 here,为了简单起见和更好地理解,我在以下文章中描述了使用 Play Framework 的整个设置:Stream a file to AWS S3 using Akka Streams (via Alpakka) in Play Framework

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-23
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    • 2014-03-19
    • 1970-01-01
    相关资源
    最近更新 更多