【发布时间】:2013-03-28 09:46:49
【问题描述】:
这就是场景。
远程文件服务器上有一个文件(比如我有一个托管在 DropBox 上的文件)
我想在我的 Web 应用程序 (c# asp.net 4.0) 上下载该文件
我想 100% 隐藏原始文件的位置(我希望它看起来来自我的服务器)。
我不想将此文件写入内存或服务器上的磁盘。
我曾假设我想使用流来流式复制。例子
Stream inputStream = response.GetResponseStream();
inputStream.CopyTo(Response.OutputStream, 4096);
inputStream.Flush();
Response.Flush();
Response.End();
但是,这会将整个流复制到内存中,然后再将其写入客户端浏览器。任何想法都会很棒。
我需要我的服务器基本上只是充当代理并屏蔽原始文件位置
感谢您的帮助。
【问题讨论】:
-
你不能只是混淆网址。没有办法做到这一点,可以很好地扩展。
-
@bumble_bee_tuna,代理服务器可以很好地扩展——尤其是在无状态的情况下——只需根据需要添加任意数量的服务器。
标签: c# stream filestream getresponsestream responsestream