2011-04-20 62 views
1

我使用ASP.NET。提供链接从服务器下载文件

我有几个音频文件在服务器上,我应该给用户临时链接下载。它表明,几个小时后,链接应该不可用 例如,我给用户:www.mysite.com/files/111.mp3,但如何保护www.mysite.com/files/免于直接访问和下载由任何用户?UrlRewriting是我需要的吗?

如何制作一个临时的网页/链接用于下载和保护文件免受地址线的直接访问?

也许我应该在数据库中存储文件(我有SQL Server 2008)?它可以帮助吗?

回答

1

我想你需要一种方法来管理临时链接(比如带有时间戳的数据库),当你通过这些链接之一得到请求时,你会使用HttpHandlers来拦截这个请求,通过请求的链接。

如果给定的时间段仍然存在,您将从服务器获取实际文件,并让Httphandler以流的形式将其发回给用户。

这样,最终用户将仍然可以获得所需的文件,但他会看到他是从您的临时链接 获取文件(比如:http://mysite.com/files/kdhsdg52354d)和在您定义的时间段之后将无法再次使用它。

对不起,我很忙,所以无法更好地格式化答案:)。