禁止客户端IE通过url地址下载文件?只能通过指定的下载页面下载文件
只有本网站转来的请求,可以下载,在地址栏直接输入地址不允许下载
1、不使用链接,使用回写流的方式,只有点击页面按钮才能激发下载
private void FileDownload(string DownPath) { String FullFileName = Server.MapPath(DownPath); FileInfo DownloadFile = new FileInfo(FullFileName); Response.Clear(); Response.ClearHeaders(); Response.Buffer = false; Response.ContentType = "application/octet-stream"; Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(DownloadFile.FullName, System.Text.Encoding.UTF8)); Response.AppendHeader("Content-Length", DownloadFile.Length.ToString()); Response.WriteFile(DownloadFile.FullName); Response.Flush(); Response.End(); }
2、在上一页面加隐藏域,访问者拷地址串,是拷不走隐藏参数的,在下载页检查隐藏参数
<html>
<body>
<form>
<input id = "down" name = "down" type = "hidden" value = "down"/>
</form>
</body>
</html>
dowload页
if (reuquest["down"] == null)
return;
本文来自博客,转载请标明出处:http://blog.csdn.net/honkerhero/archive/2007/03/29/1544773.aspx