通过修改referer下载文件的方法


Posted in Javascript onMay 11, 2008

GetFile.wsc

<?xml version="1.0" encoding="gb2312"?>  
<component>  
  <?component error="true" debug="true"?>  
  <public>  
    <property name="Referer" />  
    <property name="Content" />  
    <property name="Data" />  
    <method name="GetFile">  
      <parameter name="URL" />  
    </method>  
    <method name="Save">  
      <parameter name="Path" />  
    </method>  
  </public>  
  <implements type="Behavior">  
    <event name="ondowncomplete" />  
  </implements>  
  <object progid="Microsoft.XmlHttp" id="Http" />  
  <script language="javascript">  
  <![CDATA[  
var Referer, Content, Data;  
var Stream = new ActiveXObject("ADODB.Stream");  
Stream.Type = 1;  
function onReady()  
{  
  if(Http.readyState == 4)  
  {  
    Content = Http.responseText;  
    Data = Http.responseBody;  
    fireEvent("ondowncomplete");  
    Http.abort();  
  }  
}  
function GetFile(URL)  
{  
  Http.onreadystatechange = onReady;  
  Http.open("GET", URL, true, "", "");  
  if(Referer) Http.setRequestHeader("Referer", Referer);  
  Http.send(null);  
}  
function Save(Path)  
{  
  Stream.Open();  
  Stream.Write(Data);  
  Stream.SaveToFile(Path, 2);  
  Stream.Close();  
}  
  ]]>  
  </script>  
</component>  

test.hta
<html><head><script>  
var Down = document.createElement("Comment");  
document.lastChild.lastChild.appendChild(Down);  
Down.style.behavior="url(GetFile.wsc)";  
Down.ondowncomplete = function()  
{  
  //document.write(Down.Content);  
  Down.Save(SaveTo.value);  
  Go.disabled=0;  
  alert("OK");  
}  
function GetFile()  
{  
  Go.disabled = 1;  
  Down.Referer = Referer.value;  
  Down.GetFile(URL.value);  
}  
</script>  
</head><body>  
URL: <input id="URL" size="50" value="http://www.booksky.biz/SendFile.aspx?FileID=15531"><br>  
Referer: <input name="Referer" size="40" value="http://www.booksky.biz"><br>  
SaveTo: <input name="SaveTo" size="40" value="D:\Test.gif"><br>  
<input id="Go" type=button value="下载" onclick="GetFile()">  
</body></html> 
Javascript 相关文章推荐
javascript 处理HTML元素必须避免使用的一种方法
Jul 30 Javascript
firefox和IE系列的相关区别整理 以备后用
Dec 28 Javascript
js replace 与replaceall实例用法详解
Aug 03 Javascript
Javascript基础教程之switch语句
Jan 18 Javascript
Javascript 是你的高阶函数(高级应用)
Jun 15 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
Jul 29 Javascript
jquery按回车键实现表单提交的简单实例
May 25 Javascript
jQuery查看选中对象HTML代码的方法
Jun 17 Javascript
bootstrap轮播图示例代码分享
May 17 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
详解关于vue2.0工程发布上线操作步骤
Sep 27 Javascript
JavaScript鼠标悬停事件用法解析
May 15 Javascript
JS启动应用程序的一个简单例子
May 11 #Javascript
一段利用WSH获取登录时间的jscript代码
May 11 #Javascript
一段利用WSH修改和查看IP配置的代码
May 11 #Javascript
JS处理VBArray的函数使用说明
May 11 #Javascript
获取当前网页document.url location.href区别总结
May 10 #Javascript
用javascript获取textarea中的光标位置
May 06 #Javascript
用js实现下载远程文件并保存在本地的脚本
May 06 #Javascript
You might like
《星际争霸》各版本雷兽特点图文解析 雷兽不同形态一览
2020/03/02 星际争霸
1982年日本摄影师镜头下的中国孩子 那无忧无虑的童年
2020/03/12 杂记
关于PHP中Object对象的笔记分享
2011/06/28 PHP
使用 PHPMAILER 发送邮件实例应用
2012/11/07 PHP
Yii使用find findAll查找出指定字段的实现方法
2014/09/05 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
PHP Cli 模式设置进程名称的方法
2019/06/12 PHP
javascript面向对象之二 命名空间
2011/02/08 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
jquery zTree异步加载简单实例分享
2013/02/05 Javascript
js实现两个值相加alert出来精确到指定位
2013/09/25 Javascript
表格奇偶行设置不同颜色的核心JS代码
2013/12/24 Javascript
js判断是否为ie的方法小结
2014/01/13 Javascript
jQuery/CSS3图片特效插件整理推荐
2014/12/07 Javascript
jquery显示隐藏元素的实现代码
2016/05/19 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
JavaScript中filter的用法实例分析
2019/02/27 Javascript
基于vue 实现表单中password输入的显示与隐藏功能
2019/07/19 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
JS原型prototype和__proto__用法实例分析
2020/03/14 Javascript
[01:05:36]VP vs TNC Supermajor小组赛B组 BO3 第二场 6.2
2018/06/03 DOTA
Python处理PDF及生成多层PDF实例代码
2017/04/24 Python
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
python负载均衡的简单实现方法
2018/02/04 Python
Python爬虫实现全国失信被执行人名单查询功能示例
2018/05/03 Python
Django代码性能优化与Pycharm Profile使用详解
2018/08/26 Python
利用Django模版生成树状结构实例代码
2019/05/19 Python
使用python实现画AR模型时序图
2019/11/20 Python
Python统计文本词汇出现次数的实例代码
2020/02/27 Python
python实现贪吃蛇游戏源码
2020/03/21 Python
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
四年级下册教学反思
2014/02/01 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
幼儿园见习报告范文
2014/10/30 职场文书
硕士学位申请报告
2015/05/15 职场文书
PyQt5爬取12306车票信息程序的实现
2021/05/14 Python