0

我想使用 http4k 流式传输长响应。我打算使用Content-type: multipart/x-mixed-replace,所以我将数据无休止地推送到客户端。在 http4k 中,我们有typealias HttpHandler = (Request) -> Response. 但是我的处理程序无法返回响应,因为它不是我要返回的有限文档,而是无穷无尽的流。这是否意味着我应该使用其他东西来满足我的需求?

4

1 回答 1

1

如果您从另一个 HTTP 源提取,您可以在各种 HTTP 客户端模块之一上使用流式主体模式(Apache/OkHttp/Jetty 将工作)。

或者,如果您自己生成内容或从数据库流式传输,则必须启动一个线程并以这种方式处理它。在用于证明各种客户端可以进行流式传输的测试用例中的源代码中有一个如何执行此操作的示例。

https://github.com/http4k/http4k/blob/master/http4k-core/src/test/kotlin/org/http4k/streaming/StreamingContract.kt

于 2019-11-30T11:14:42.223 回答