收录日期:2019/01/20 03:08:45 时间:2016/05/20 18:26:56 标签:ASP
是防盗连技术,我想通过ASP输出指定URL文件,而不是通过Response.Redirect转移到绝对地址~~
要如何做?
还有就是消耗如何?
是否消耗CPU?
将下面的东西存成download.asp
然后你就可以用a herf="http://xxx.xxx.com/download.asp?n=file.doc">download!</a>
来下载了!
------------------------------------------------------------
<%
Response.Buffer = true
Response.Clear

dim url
Dim fso,fl,flsize
dim Dname
Dim objStream,ContentType,flName,isre,url1
'*********************************************调用时传入的下载文件名
Dname=trim(request("n"))
'******************************************************************
If Dname<>"" Then
'******************************下载文件存放的服务端目录
url=server.MapPath("/")&"\"&Dname
'***************************************************
End If

Set fso=Server.CreateObject("Scripting.FileSystemObject")
Set fl=fso.getfile(url)
flsize=fl.size
flName=fl.name
Set fl=Nothing
Set fso=Nothing
%>
<%
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.LoadFromFile url


Select Case lcase(Right(flName, 4))
Case ".asf"
ContentType = "video/x-ms-asf"
Case ".avi"
ContentType = "video/avi"
Case ".doc"
ContentType = "application/msword"
Case ".zip"
ContentType = "application/zip"
Case ".xls"
ContentType = "application/vnd.ms-excel"
Case ".gif"
ContentType = "image/gif"
Case ".jpg", "jpeg"
ContentType = "image/jpeg"
Case ".wav"
ContentType = "audio/wav"
Case ".mp3"
ContentType = "audio/mpeg3"
Case ".mpg", "mpeg"
ContentType = "video/mpeg"
Case ".rtf"
ContentType = "application/rtf"
Case ".htm", "html"
ContentType = "text/html"
Case ".txt"
ContentType = "text/plain"
Case Else
ContentType = "application/octet-stream"
End Select



Response.AddHeader "Content-Disposition", "attachment; filename=" & flName
Response.AddHeader "Content-Length", flsize

Response.Charset = "UTF-8"
Response.ContentType = ContentType

Response.BinaryWrite objStream.Read
Response.Flush
response.Clear()
objStream.Close
Set objStream = Nothing

%>

直接用fso来读硬盘文件,当然比直接写连接的下载多耗服务器资源
不可用~~~
不支持RAR哦
嗯!给我提供了一种思路!不错谢谢楼上的!!

求一本Oracle数据库开发实例的书 建工程问题 择业与就业,是哪个比较重要! 关于构造函数 jpegsrc.v6b 和 jpegsrc.v8c 的区别 .net Framework3.5安装之后的问题 C程序 求助 抽奖小程序 通过datagridview生成的datatable,怎样绑定为rdlc报表的数据源? 大家来说说对不对 关于IT公司待遇问题 关于抽象类的一个问题 gdi+ 单个字符宽度(像素) 求1至10各数阶乘的和 求哪们大侠帮帮忙,给我下个2积分的东西,小弟最近没有积分了 本人是新手,现在需要开发一个很轻量级的ActiveX 想学IPAD的应用开发,不知道买IPAD好,还是IPAD2好 在线支付有那些,怎么实现的,收费吗? 请各位大侠帮忙解决一个问题 一条oracle的sql语句的疑问? java,jsp,页面跳转 关于制作属于自己的mysql类的问题 大家帮看看 (非技术类) 电脑上本来有2005 后来装 2010 结果默认都用2010打开了 有什么办法 可以让vs2005默认打开 有谁理解编码知识,utf-8,gbk,big2,unicode 之间的转换?请高手帮忙啊 小公司承诺的股份期权之类的靠谱不? Microsoft JET Database Engine \'80040e14\' oracle 11g 问题,待高手帮忙!!! delphi 筛选条件在程序里如果表示 求一分页SQL语句(在线等) 关于多线程的时间片问题。