【问题标题】:File Upload over HTTPS - Desktop to WebServer通过 HTTPS 上传文件 - 桌面到 WebServer
【发布时间】:2009-03-07 23:10:51
【问题描述】:

我有一个桌面应用程序需要将文件上传到网络服务器。

协议是 HTTPS。

我在想我应该写一个 ashx 来处理上传;一次发送 4k 块。每次都回复ok。这是一个好的算法吗?

通过 HTTPS 从桌面应用程序上传到网络服务器的最佳算法是什么?

【问题讨论】:

    标签: upload https desktop


    【解决方案1】:

    您要上传多大的文件?只要它们不是很大(> 100 MB),您就可以从您的应用程序生成多部分 MIME 编码上传 (RFC 1867)。这与浏览器用于上传的格式相同,因此您的处理程序只需从 Request.Files 集合中提取文件。除非您在慢速连接上上传或上传大文件,否则分块不会给您带来太多好处。

    【讨论】:

      【解决方案2】:

      如果您采用仅在收到前一个数据包的确认后才发送下一个数据包的简单方法,则分块可能会减慢您的速度。事实证明,这种方法很慢(在具有非平凡延迟的网络上)。尝试由网络服务器直接支持的东西,而不是自己滚动(例如 Chris Hynes 提出的建议:多部分 MIME 编码上传)。

      【讨论】:

      • 你有“被证明很慢”的参考吗?
      • 我手头没有参考资料。对此有两种证明,数学证明和“经验证明”,如果您环顾四周,这两种证明都应该可用。作为起点,搜索“滑动窗口协议”。
      • 让网络为您处理这个问题。你不需要考虑它。
      • Nathan 的意思是分块和确认已经内置在 TCP 中。重新创建这个有什么意义?有没有你没有提到的特殊要求?
      猜你喜欢
      • 2013-12-17
      • 1970-01-01
      • 2019-03-10
      • 2017-04-30
      • 2011-10-10
      • 1970-01-01
      • 2014-05-26
      • 2020-04-25
      • 1970-01-01
      相关资源
      最近更新 更多