【问题标题】:Netty Stream URL / InputStreamNetty 流 URL / InputStream
【发布时间】:2012-10-17 17:15:10
【问题描述】:

我正在尝试扩展这里的功能:

https://github.com/netty/netty/tree/3/src/main/java/org/jboss/netty/example/http/file

通过提供对流 URL 而非文件的支持,因为我想提供的内容位于我的 JAR 中的类路径中。不幸的是,我似乎找不到使用 Jetty 流式传输 URL 或 InputStream 的好方法,也找不到任何示例。

希望能提供 JavaDoc 的示例或参考,以帮助我走上正确的道路。

【问题讨论】:

    标签: java streaming netty


    【解决方案1】:

    只需使用 ChunkedWriteHandler 并编写一个包装 InputStream 的 ChunkedStream。

    这应该可以解决所有问题..

    【讨论】:

    • 只要我关闭频道,它就对我有用。如果我尝试遵守 KeepAlive,客户端(实际上是浏览器)会接收块,但连接会保持并且客户端永远等待。只需从 example/http/file 中的 HttpStaticFileServerHandler.java 开始,将 ChunkedFile 更改为 ChunkedStream 即可重现。有什么线索吗?
    • 抱歉没明白...你能写一个能重现它的测试吗?
    • 我只是在 io.netty.example.http.file (form 4.0.0.CR1) 中编辑了 HTTP 文件服务器以编写 ChunkedStream 而不是 ChunkedFile 并且没有设置 Content-Size 标头。现在浏览器接收数据然后永远等待。这是修改后的 HttpStaticFileServerHandler.java:gist.github.com/eskatos/5311587 我希望它能够按原样工作,但似乎我遗漏了一些东西。
    • 我用 4.0.0.CR1 的差异更新了要点,因此您可以快速查看导致问题的小变化。
    • 为了清楚起见,我提出了一个单独的问题:stackoverflow.com/questions/15829810/…
    猜你喜欢
    • 1970-01-01
    • 2011-12-29
    • 2014-08-06
    • 1970-01-01
    • 2011-10-19
    • 2017-07-24
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    相关资源
    最近更新 更多