设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 1674|回复: 3

使用CloudFlare Workers反代任何图片

[复制链接]

签到天数: 5 天

[LV.2]偶尔看看I

发表于 2021/8/24 09:07 | 显示全部楼层 |阅读模式
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
本帖最后由 qctech 于 2021/8/24 09:08 编辑

使用场景:
- 原图片地址被封锁
- 防止图片服务器收集、记录用户信息
- 加速(?)

源代码
  1. function jugeUrl(URL) {
  2.   var str = URL;
  3.   //判断URL地址的正则表达式为:http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
  4.   //下面的代码中应用了转义字符""输出一个字符"/"
  5.   var Expression = /http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/;
  6.   var objExp = new RegExp(Expression);
  7.   if (objExp.test(str) == true) {
  8.     return true;
  9.   } else {
  10.      return false;
  11.   }
  12. }
  13. function isBase64(str) {
  14.     if (str ==='' || str.trim() ===''){ return false; }
  15.     try {
  16.         return btoa(atob(str)) == str;
  17.     } catch (err) {
  18.         return false;
  19.     }
  20. }

  21. addEventListener("fetch", event => {
  22.   let url = new URL(event.request.url);
  23.   if(isBase64(url.pathname.substr(1))){
  24.     img_url = atob(url.pathname.substr(1))
  25.     url.href = img_url;
  26.   }else{
  27.     return false;
  28.   }
  29.   
  30.   if(!jugeUrl(img_url)){
  31.     return false;
  32.   }

  33.   let request = new Request(url, event.request);
  34.   event.respondWith(
  35.     fetch(request, {
  36.       headers: {
  37.         'Referer': url.hostname,
  38.       }
  39.     })
  40.   );
  41. });

复制代码


使用方法:
将原图片URL Base64编码一次,拼接到Workers的URL后即可

效果预览


https://pic.qc.workers.dev/aHR0cHM6Ly9hdHQuaXR6bXguY29tL2xvZ28ucG5n
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2021/8/24 20:05 | 显示全部楼层 |Google Chrome 92.0.4515.159|Windows 7
这个可以干嘛
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 5 天

[LV.2]偶尔看看I

 楼主| 发表于 2021/8/24 20:32 | 显示全部楼层 |Google Chrome 92.0.4515.159|Windows 10

外链分享 P 站图片
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2021/8/24 22:03 | 显示全部楼层 |Google Chrome 92.0.4515.159|Windows 7
qctech 发表于 2021/8/24 20:32
外链分享 P 站图片

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/11/23 11:19 , Processed in 0.105927 second(s), 22 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表