cloudflare workers telegram bot api

发布于 2021-10-03  1593 次阅读


使用CF WK来转发tg机器人的API

先建立一个wk

代码如下

const whitelist = [""];
const tg_host = "api.telegram.org";

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

function validate(path) {
    for (var i = 0; i < whitelist.length; i++) {
        if (path.startsWith(whitelist[i]))
            return true;
    }
    return false;
}

async function handleRequest(request) {
    var u = new URL(request.url);
    u.host = tg_host;
    if (!validate(u.pathname))
        return new Response('Unauthorized', {
            status: 403
        });
    var req = new Request(u, {
        method: request.method,
        headers: request.headers,
        body: request.body
    });
    const result = await fetch(req);
    return result;
}

然后部署

得到你自己的一个API了

地址就是你的Workers.dev 路由 类是  XXX-XXX-XXX.XXXX.workers.dev

发信方法为 XXX-XXX-XXX.XXXX.workers.dev/bot58xxxx86:A**********************o/sendMessage?chat_id=4*****5&text=123消息内容

如果是用在青龙上 只需要把通知的表格写号 XXX-XXX-XXX.XXXX.workers.dev 作为API即可