【发布时间】:2017-01-29 15:23:01
【问题描述】:
以下情况:
我有一个网络服务器,它会在客户端请求时下载文件并用作文件缓存。
客户端请求一个文件并将文件url作为参数传递。网络服务器检查他是否缓存了文件。如果没有,则网络服务器下载文件并在下载后提供文件。
对客户端的响应必须是文件。无法通过“正在下载,请稍后再回来查看”来关闭响应,并在几分钟后打开来自客户端的第二个请求。 不,我不会切换到套接字,因为客户端不支持它。客户端必须使用 .NET WebClient.DownloadFile。
问题是,对网络服务器的 HTTP 请求在下载文件时被暂停。文件可以是任意大小,如果文件不能及时下载返回给客户端,会导致客户端请求超时取消。
我不想在客户端上设置超时,因为这太过分了。
有人知道如何解决这个问题吗?我已阅读有关 HTTP 状态 102(处理)的信息,但我不知道如何设置该状态。
我在网络服务器上使用 node.js,但对任何类型的(tcp 级别)解决方案感兴趣。
【问题讨论】:
标签: node.js web-services http tcp