站点图标 谷姐靓号网

workers 反代 jsdelivr,支持加密和防盗链。-jarmoku

Rate this post

代码如下,具有防跨站和网址加密功能。你问我用这个有什么意义,主要是可以套国内的CDN呀!
具体使用使用方式参阅我的个人博客:https://www.430074.xyz/posts/workers-jsdeliver.html

    // 允许的 CORS 来源
    const ALLOWED_REFERER = [
    /^https?:\/\/localhost(:\d*)?\/.*$/,
    /^https?:\/\/([\w-]+\.)*w3schools\.com(:\d*)?\/.*$/
    ];
    // 是否允许所有无 Referer 请求
    const ALLOW_NO_ORIGIN = true;
    //输入你的密码,密码加在path后面做SHA-1运算
    const MYSECRET = "123456";

    function validateReferer(req) {
    const referer = req.headers.get('Referer');
    if (referer) {
    for (const el of ALLOWED_REFERER) {
    if (el.exec(referer)) {
    return true;
    }
    }
    return false;
    }
    return ALLOW_NO_ORIGIN; // 是否拒绝所有无 Referer 请求
    }

    async function handle(request) {
    let url = new URL(request.url);
    const acceptType = request.headers.get('Accept');
    const hash_request = url.pathname.split("/")[1];
    const path_real = url.pathname.substring(hash_request.length + 1, url.pathname.length);
    url.hostname = "cdn.jsdelivr.net";
    url.pathname = path_real;

    if (!(await validatePath(hash_request, path_real))) {
    return new Response('Error Hash', {
    status: 403
    });
    }

    if (!(validateReferer(request))) {
    return new Response('Blocked Host', {
    status: 403
    });
    }

    return await fetch(url);
    }

    async function validatePath(hash_request, path_real) {
    const message = new TextEncoder().encode(path_real + MYSECRET);
    const myDigest = await crypto.subtle.digest('SHA-1', message);
    const hashArray = Array.from(new Uint8Array(myDigest));
    const hashHex = hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
    return (hashHex == hash_request);
    }

    addEventListener('fetch', event => {
    event.respondWith(handle(event.request));
    })

热议
推荐楼 YorkZhao 2022-5-22 11:46:34

gcore.jsdelivr.net
cf.jsdelivr.net
fastly.jsdelivr.net
好了楼主退下吧

3楼 gogoo2 2022-5-22 11:51:46

有没有国内cdn的呢?速度要快哦。

4楼 dole 2022-5-22 11:53:27

马克

5楼 asdii 2022-5-22 12:36:42

感谢分享

6楼 jarmoku 3小时前

有没有国内cdn的呢?速度要快哦。

看我网站用的哪个

7楼 haozi 3小时前

worker那速度,整个小鸡不香吗

8楼 jarmoku 3小时前

worker那速度,整个小鸡不香吗

你不会套国内cdn吗?

9楼 haozi 3小时前

你不会套国内cdn吗?

小鸡不能套cdn吗?worker那线路,套了又能快到哪去?

10楼 jarmoku 2小时前

小鸡不能套cdn吗?worker那线路,套了又能快到哪去?

你说得对,可惜我天天重装小鸡,不如workers稳定。

12楼 jarmoku 2小时前

SHA1也太麻烦了,workers现在和国内连通性不好,也没必要搞成这样吧……

要不是我的workers次数被刷完了,我也不想这样。
今天就有一个没加密的:https://hostloc.com/forum.php?mod=viewthread&tid=1029981&highlight=CF%2Bworkers

13楼 SeegerNew 2小时前

要不是我的workers次数被刷完了,我也不想这样。
今天就有一个没加密的:https://hostloc.com/forum.php? ...

大佬,有没加密的版本吗?我倒是不在乎会不会刷完,简单能用就行,谢谢!

14楼 jarmoku 11分钟前

大佬,有没加密的版本吗?我倒是不在乎会不会刷完,简单能用就行,谢谢! ...

网上直接搜索workers反代,都可以

申明:本文内容由网友收集分享,仅供学习参考使用。如文中内容侵犯到您的利益,请在文章下方留言,本站会第一时间进行处理。

退出移动版