Asp.net下实现隐藏真实下载地址(可以实现简单的防盗链)

本文介绍了一种在ASP.NET环境下实现防盗链的方法,通过服务器端响应控制,避免资源被非法引用,适合小文件的单线程下载场景。
现在随着FlashGet和xunlei等下载工具的日益普及,下载网站的一些下载地址都能直接被捕获到,,但是有些时候为了防盗链或权限限制不想对地址进行暴露,对于Asp.net下的防盗链有很多方法,我这里写了一种(51aspx的新版本将会采纳)希望大家讨论一下:
stringfilename="51aspx_Test.rar";

if(filename!="")
{
stringpath=Server.MapPath(filename);
System.IO.FileInfofile
=newSystem.IO.FileInfo(path);
if(file.Exists)
{
Response.Clear();
Response.AddHeader(
"Content-Disposition","attachment;filename="+file.Name);
Response.AddHeader(
"Content-Length",file.Length.ToString());
Response.ContentType
="application/octet-stream";
Response.WriteFile(file.FullName);
Response.End();
}

else
{
Response.Write(
"该文件不存在,请联系51aspx管理员!");
}

}


当然这样也有弊端,就是用户只能用IE单线程进行下载,对于分量小的下载地址来说这个无所谓了,如果各位还有其他更好的办法,欢迎补充~~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值