使用 Cloudflare Worker 代理 Telegram Bot Api

使用 Cloudflare Worker 代理 Telegram Bot Api
PengPengQAQCloudflare Worker 搭建 Telegram 反向代理
一、创建 Cloudflare Worker
登录 Cloudflare
访问 Cloudflare Dashboard 并进入 Workers & Pages。创建新 Worker
- 点击 Create Application → Create Worker。
- 进入编辑器后,删除默认代码,替换为以下代码,使用 Cloudflare Worker 反向代理
api.telegram.org:
1 | export default { |
- 说明
- 这个 Worker 代码 直接转发 请求到
api.telegram.org,实现无感代理。 - 你可以通过
https://你的worker子域.workers.dev/botTOKEN/sendMessage访问 Telegram API。
- 这个 Worker 代码 直接转发 请求到
二、绑定自定义域名
如果你想用 tgbotapi.test.com 作为反向代理域名:
- 进入 Cloudflare 控制面板 → 选择你的域名 (
test.com)。 - 添加 DNS 记录
- 记录类型:
CNAME - 名称:
tgbotapi - 目标:
你的worker子域.workers.dev - Proxy 状态:开启 Proxied
- 记录类型:
- 配置 Worker 路由
- 打开 Workers & Pages → 选择你的 Worker。
- 进入 Triggers → Add Route。
- 规则填写
https://tgbotapi.test.com/*,绑定到你的 Worker。
三、修改 Bot 代码,使用反代 API
方法 1:直接修改 API 请求 URL
如果你的代码使用 requests 直接调用 Telegram API:
1 | import requests |
方法 2:修改现有 Bot 框架
如果你使用 python-telegram-bot 库,可以修改 base_url:
1 | from telegram import Bot |
四、测试是否生效
可以手动调用 curl 来测试:
1 | curl "https://tgbotapi.test.com/bot你的BotToken/getMe" |
如果返回正确的 Bot 信息,说明反向代理正常工作。
五、常见问题
403 Forbidden
- CF 可能屏蔽了某些请求,添加
User-Agent解决:1
headers.set("User-Agent", "Mozilla/5.0");
- CF 可能屏蔽了某些请求,添加
国内仍然访问不到
- 可能是 CF 反向代理被干扰,尝试 Cloudflare Argo Tunnel。
速度慢
- Worker 免费版有 100K 限制,升级 Cloudflare Pro 可提升稳定性。
这样你就完成了 Cloudflare Worker代理Telegram Bot Api,国内服务器可以用 tgbotapi.test.com 直接请求 Telegram!


