服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - ASP教程 - asp读取远程文件并保存到本地代码

asp读取远程文件并保存到本地代码

2019-10-16 09:59asp代码网 ASP教程

asp读取远程文件并保存到本地代码

  1. <%  
  2. dim act,ifLogin,loginUrl,loginActUrl,loginData,fileUrl,fileName  
  3. act=request.QueryString("act")  
  4. if(act="do") then   
  5.  ifLogin=Cint(request.QueryString("ifLogin"))  
  6.  loginActUrl=request.Form("loginActUrl")  
  7.  loginData=request.Form("loginData")  
  8.  fileUrl=request.Form("fileUrl")  
  9.  fileName=mid(fileUrl,instrrev(fileUrl,"/")+1)  
  10.  extPos=instrrev(fileName,"?")  
  11.  if(extPos>0) then  
  12.   fileName=left(fileName,extPos-1)  
  13.  end if  
  14.  if(ifLogin=1) then  
  15.   call PostHttpPage(loginActUrl,loginData)  
  16.  end if  
  17.  call DownloadFile(fileUrl,fileName)  
  18. else  
  19. %>  
  20. <form name="form1" method="post" action="?act=do">  
  21.   <p>是否登录:  
  22.     <input name="ifLogin" type="radio" value="1">  
  23.     是  
  24.     <input name="ifLogin" type="radio" value="0" checked>  
  25.     否  </p>  
  26.   <p>登录提交地址:  
  27.     <input name="loginActUrl" type="text" size="50">  
  28.   </p>  
  29.   <p>  
  30.     登录数据:<input name="loginData" type="text" size="50">  
  31.   </p>  
  32.   <p>  
  33.     要保存的远程文件URL:  
  34.     <input name="fileUrl" type="text" size="50">  
  35.   </p>  
  36.   <p>  
  37.     <input type="submit" name="Submit" value="提交">  
  38.     <input type="reset" name="Submit2" value="重写">  
  39.   </p>  
  40. </form>  
  41. <%  
  42. end if  
  43. Function BytesToBstr(body,code)   
  44.         dim objstream   
  45.         set objstream = Server.CreateObject("adodb.stream")   
  46.         objstream.Type = 1   
  47.         objstream.Mode =3   
  48.         objstream.Open   
  49.         objstream.Write body   
  50.         objstream.Position = 0   
  51.         objstream.Type = 2   
  52.         objstream.Charset =code  
  53.         BytesToBstr = objstream.ReadText    
  54.         objstream.Close   
  55.         set objstream = nothing   
  56. End Function   
  57. Function PostHttpPage(loginActUrl,PostData)   
  58.     Dim xmlHttp   
  59.     Dim RetStr        
  60.     Set xmlHttp = CreateObject("Microsoft.XMLHTTP")    
  61.     xmlHttp.Open "POST", loginActUrl, False  
  62.     XmlHTTP.setRequestHeader "Content-Length",Len(PostData)   
  63.     xmlHttp.setRequestHeader "Content-Type""application/x-www-form-urlencoded"     
  64.     xmlHttp.Send PostData   
  65.     If Err.Number <> 0 Then   
  66.         Set xmlHttp=Nothing  
  67.   response.Write("提交登录时出错!提交数据:"&PostData)  
  68.         Exit Function  
  69.     End If  
  70.     PostHttpPage=BytesToBstr(xmlHttp.responseBody,"GB2312")  
  71.     Set xmlHttp = nothing  
  72. End Function  
  73. '''''''''''''''''''''''''''''''''''''''''''  
  74. function DownloadFile(url,filename)  
  75.  Set xml = Server.CreateObject("Msxml2.XMLHTTP") '创建对象  
  76.  
  77.    xml.Open "GET",url,False  
  78.    xml.Send '发送请求      
  79.  
  80.    if Err.Number>0 then   
  81.   Response.Status="404"  
  82.   else  
  83.   Response.ContentType="application/octet-stream"  
  84.   Response.AddHeader "Content-Disposition:","attachment; filename=" & filename  
  85.   Range=Mid(Request.ServerVariables("HTTP_RANGE"),7)  
  86.   if Range="" then  
  87.    Response.BinaryWrite(xml.responseBody)  
  88.   else  
  89.    S.position=Clng(Split(Range,"-")(0))  
  90.    Response.BinaryWrite(xml.responseBody)  
  91.   End if  
  92.   end if  
  93.  Response.End    
  94.    Set xml = Nothing  
  95. end function  
  96. '''''''''''''''''''''''''''''''''''''''''''''''''''''  
  97. %> 

延伸 · 阅读

精彩推荐
  • ASP教程ASP 获取文件扩展名函数getFileExt()

    ASP 获取文件扩展名函数getFileExt()

    利用了asp的instrrev获取最后.的位置,然后进行截取,大家可以自己测试,其实编程过程也是大量的测试,慢慢就会发现更多的好东西。...

    asp开发网1802019-09-09
  • ASP教程ip138之asp小偷程序代码

    ip138之asp小偷程序代码

    ip138之asp小偷程序代码 ...

    asp代码网3262019-10-11
  • ASP教程asp下最简洁的多重查询的解决方案

    asp下最简洁的多重查询的解决方案

    最简洁的多重查询的解决方案 [前言] 我们经常会遇到多重查询问题,而长长的SQL语句往往让人丈二和尚摸不着头脑。特别是客户端部分填入查询条件时,如...

    asp教程网3732019-10-04
  • ASP教程ASP Google的translate API代码

    ASP Google的translate API代码

    上篇文字PHP使用Google的translate API写了以后,突然想做个ASP的类,以致asp用户使用。遂写起,发现asp忘了不少。如主题吧,思路和C#的这篇是完全一样的,我...

    asp开发网4122019-09-16
  • ASP教程ASP 关于动态数据显示页面得锚点

    ASP 关于动态数据显示页面得锚点

    锚点是top,可以放在页面的任何位置,一般是页首。程序红色部分是关键,就是对锚点出现的判断,我设置的数值是4,意思是出现4个动态数据就出现一个...

    asp教程网4982019-10-10
  • ASP教程ASP中CINT和INT的区别

    ASP中CINT和INT的区别

    CInt 会进行四舍五入取最接近它的偶数,也就是说当小数部分为0.5XXXX时,它会取最接近X.5XX的偶数,而Int就是取整函数,会去除小数点部分...

    服务器之家5042019-07-09
  • ASP教程asp按关键字查询XML的代码

    asp按关键字查询XML的代码

    非常不错的代码,方便用xml作为数据库的朋友 ...

    asp教程网5072019-09-19
  • ASP教程asp javascript picasa相册外链批量导出

    asp javascript picasa相册外链批量导出

    自己的空间想做一个相册,找来找去用了picasa,功能很方便,唯一不足之处是获取外链太麻烦,一个一个的复制粘贴太辛苦,于是用asp+javascript的方法写了...

    asp教程网3392019-09-11