我一直试图通过HTTP将Play内容流式传输到Java中的Play Framework 2.5,Play Framework 2.5延迟流式处理内容
问题是,我不确定结果是否实际上是流式传输,这就是为什么我试图延迟每个项目发射,似乎没有工作出于某种原因。
代码
public Result test(){
HttpEntity http = new HttpEntity.Streamed(Source.range(0, 99999)
.map(i -> ByteString.fromString(i.toString()))
.initialDelay(FiniteDuration.create(200, TimeUnit.MILLISECONDS))
, Optional.empty(), Optional.of("text/event-stream"));
return ok().sendEntity(http);
}
的响应可以发现。
它确实返回值,但不会延迟它们,它也会在加载一段时间后发送整个响应。我不确定initialDelay是否是延迟的正确运营商。
这是发送Play流的正确方法吗?我一直在使用这个页面作为参考https://www.playframework.com/documentation/2.5.x/StreamsMigration25
谢谢你的帮助!
您的浏览器和播放可能会缓冲流的某些部分。 initialDelay似乎是正确的配置使用。尝试发送包含新行的流:'i.toString()+“\ n”'并尝试使用curl查看结果 – vdebergue