如何创建Vert.x从输入流中读取流



我想将本地进程的标准输出流式传输到Vert。x HttpResponse。

要做到这一点,我认为我必须流/转换/管道一个java.io.InputStream(流的过程标准输出)到io.vertx.core.streams.ReadStream,然后我可以管道ReadStreamHttpResponse

我正在寻找一个解决方案,有一个小的内存影响,所以读取整个标准输出在内存中,然后刷新它到HttpResponse是不可能的。

感谢

查看:

https://gist.github.com/Stwissel/a7f8ce79785afd49eb2ced69b56335de

我是这样使用的:

InputStream is = ...
AsyncInputStream ais = new AsyncInputStream(
vertx, vertx.getOrCreateContext(), is);
ais.pipeTo(response);

另一种方法是使用vertx-java中的OutputToReadStream类。io库(我是作者):

new OutputToReadStream(vertx).wrap(inputStream).pipeTo(response);

相关内容

  • 没有找到相关文章

最新更新