akka-stream - 用源完成路由并获得其物化价值
问题描述
有一条路线有点像这样:
val route =
path("data") {
get {
val src: Source[ByteString, BoundedSourceQueue[ByteString]] = ???
complete(HttpEntity(ContentTypes.`application/octet-stream`, src))
}
}
如何访问此来源的物化价值?
解决方案
预实现src
应该可以解决问题。
// will need an implicit ActorSystem/ActorMaterializer in scope
val baseSrc: Source[ByteString, BoundedSourceQueue[ByteString]] = ???
val (bsq, src) = baseSrc.preMaterialize()
// do stuff with bsq...
complete(HttpEntity(ContentTypes.`application/octet-stream`, src))
推荐阅读
- python - 在大数据上计算 node_centrality 和 edge_centrality 的性能问题
- clojure - 如何在 Clojure 中捕获一个 arity 异常?
- xamarin - 将 JSONObject (Android) 移植到 JObject (JSON.NET)
- mysql - 查找两列之间的 DATEDIFF 并创建自己的列
- c++ - 孤立代码块在结构中抛出异常
- java - JPA Criteria API - LEFT OUTER JOIN 未填充 @OneToMany 列表
- javascript - 当用户离开网站时将所有音频静音
- c# - 我可以在 Azure Functions 上使用“Excel Com 对象”吗?
- google-cloud-firestore - 使用 SQL 数据库管理 Cloud Firestore 的唯一 ID?
- php - 第 444 行的文件 /var/www/vendor/composer/ClassLoader.php 中没有这样的文件或目录