之前试着拿来当图床:「「折腾」关于 2021 年末仍然没有完备的图床方案这件事_电脑网络_沉冰浮水

不过没多久不能直连了,,也是心塞;

所以本方案需要自行解决阅读器到workers.dev的连接;


步骤:

1、注册并登录:https://workers.cloudflare.com/

2、「创建服务」 → 可自行决定「服务名称」 → 「启动器」随便选一个就好 → 「创建服务」;「新注册可能要先设置子域

3、进入新建服务的内页 → 「快速编辑」;

4、复制下边代码填入项目内,cf_worker_host修改为你的服务地址 → 「保存并部署」;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
addEventListener("fetch", event => {
event.respondWith(handleRequest(event.request))
})

// 如果有其他 RSSHub 地址也可以补充在这里
const proxyList = [
"https://rss.shab.fun/",
"https://rsshub.rssforever.com/",
"https://rsshub.app/",
];

async function handleRequest(request) {
// Cloudflare Workers 分配的域名
cf_worker_host = "https://rsshub.wdssmq.workers.dev/";

// 随机选择一个代理
let proxy = proxyList[Math.floor(Math.random() * proxyList.length)];

// 替换
url = request.url.replace(cf_worker_host, proxy);

return fetch(url);

// return new Response(JSON.stringify({ proxy, url }), {
// headers: { "Content-Type": "application/json" },
// });

}

其实更早有这个方案:「【折腾】GitHub Actions 反代 RSSHub + 多实例轮询_电脑网络_沉冰浮水

然而严格来说是违反 GitHub 的 TOS 的,虽然用了蛮久了已经;