通过http下载文件不起作用,但通过https工作正常

时间:2011-05-08 10:09:58

标签: c# asp.net http https download

我有以下场景下载文件格式服务器:

  • 我试图在ASP.NET页面中通过HTTP从服务器下载许多文件(但不是SSL ),但其中一个文件没有下载;它会返回错误:operation timeout

  • 当我尝试通过HTTPS下载此文件时,它运行良好。

  • 我尝试使用普通HTTP使用其他软件下载文件,但收到了同样的错误消息。

我非常感谢任何指导或帮助。

1 个答案:

答案 0 :(得分:4)

  

if(文件是可执行文件)

     

可能是因为网络   某些EXE文件的服务器驻留在   不发送
  Content-Length标头。如果这个标题   没有,唯一的方法就是你   确定下载是否完成   是“当字节停止来”,即   TCP / IP连接已关闭或   超时如果连接质量   很低,这很可能发生   过早。

     

但是为什么在Https中没有发生这种情况?   那是因为http有更大的等待   时间和较短的接收时间。 HTTPS   另一方面等待较小   时间和更长的接收时间。

     

共享主机上的http端口   服务器更忙,因此请求   在队列中停留更长时间   被服务器接受。

     

在https端口上有更少   服务器上的流量所以请求   服务更快。