zoukankan      html  css  js  c++  java
  • WebHttpBinding的流传输模式让我头大了

    webHttpBinding支持流传输和缓存模式2种,如果要提供文件下载,肯定是要选择流传输模式的,不然文件要全部加载到内存后才会发送出去,不但占内存开销大,还影响了发送响应的速度。问题是流传输下面,自动使用了Transfer-Encoding:chunked的方式,这种方式将不告知客户端文件长度,即使我服务器设置消息头也没用,客户端就是得不到长度,导致了客户端以为我服务端不支持断点续传,甚至多线程下载都不能使用,除非自己开发一个下载软件,反正传统的下载软件都不支持,唯独NetTransport还能尝试在不知道是否能续传的情况下,发送续传指令,算是最人性化的软件了。

    想来想去,只有一个方法可以考虑了,就是改造 webHttpBinding 的缓存模式,缓存模式是传统的http响应,各种http头都可以设置,自然断点续传,多线程传输都可以使用,所需解决的问题是消息的写入,不能写缓存,而是实时从流中获取(如果返回的是流对象)。

    研究方向确定,接下来看能否成功自定义一个 webHttpBinding 类似的绑定类出来了。待续……

  • 相关阅读:
    jstl与el学习笔记
    Subversion 安装笔记
    某公司面试
    字符集与字符编码的一些小常识,以及java web中文乱码的一些solution
    分治算法与合并排序示例
    C/C++ 笔试,难倒我哉
    HTML meat作用
    VIM配置DBGp调试PHP程序
    更新系统引导项
    PHP技术讨论群
  • 原文地址:https://www.cnblogs.com/qldsrx/p/2411537.html
Copyright © 2011-2022 走看看