当前位置: 首页 > news >正文

Telegram Bot 配置指南:使用 Cloudflare Worker 部署

本指南将教您如何创建一个 Telegram Bot 并使用 Cloudflare Worker 部署它。
在这里插入图片描述

1. 创建 Telegram Bot

  1. 在 Telegram 中搜索 “@BotFather”。
  2. 向 BotFather 发送 /newbot 命令。
  3. 按照提示设置 bot 的名称和用户名。
  4. 完成后,您将收到一个 API Token,请妥善保存。

2. 使用 Cloudflare Worker 部署 Bot

2.1 代码示例

addEventListener('fetch', event => {event.respondWith(handleRequest(event.request));
});async function handleRequest(request) {if (request.method === 'POST') {try {const body = await request.json();console.log(body);const TOKEN = globalThis.ENV_BOT_TOKEN;const url = `https://api.telegram.org/bot${TOKEN}/sendMessage`;const response = await fetch(url, {method: 'POST',headers: { 'Content-Type': 'application/json' },body: JSON.stringify({chat_id: body.message.chat.id,text: `You said: ${body.message.text}`,}),});return new Response('OK', { status: 200 });} catch (error) {return new Response('Error processing request', { status: 500 });}}return new Response('Invalid request', { status: 400 });
}

2.2 部署步骤

  1. 登录 Cloudflare 账户,创建新的 Worker。
  2. 将上述代码粘贴到 Worker 编辑器中。
  3. 在 Worker 的设置中添加环境变量 ENV_BOT_TOKEN,值为您的 Telegram Bot API Token。
  4. 部署 Worker。

2.3 设置 Webhook

部署完成后,需要设置 Webhook 以便 Telegram 服务器能够向您的 Worker 发送更新。

使用以下命令设置 Webhook(请在国外服务器上运行,以避免访问不了的错误):

curl -F "url=https://your-worker-subdomain.workers.dev" https://api.telegram.org/botYOUR_API_TOKEN/setWebhook

替换 your-worker-subdomainYOUR_API_TOKEN 为实际值。

验证 Webhook 设置:

https://api.telegram.org/botYOUR_API_TOKEN/getWebhookInfo

3. Cloudflare Worker 使用注意事项

  1. 环境变量访问:使用 globalThis. 前缀访问环境变量,例如:

    const TOKEN = globalThis.ENV_BOT_TOKEN;
    
  2. 代码保存:有时保存可能不会立即生效,需要重新进入并粘贴代码。

  3. 调试:可以切换到 HTTP 功能,输入测试数据进行调试。

  4. 部署:只有在预览模式下才能点击"部署"按钮。HTTP 模式下无法部署。

通过以上步骤,您就可以成功创建并部署一个基于 Cloudflare Worker 的 Telegram Bot。


http://www.mrgr.cn/news/26662.html

相关文章:

  • LSS如何创建视锥
  • 低代码基于 vue-draggable-resizable 实现 选中状态在点击配置区域时依然生效 点击其他区域取消选中状态
  • 【编程基础知识】数据库表设计三范式
  • C#使用Access数据库使用总结
  • 系统架构师考试学习笔记第五篇——架构设计补充知识(26)论文写作
  • 产学研合作赋能产业升级新动能
  • 2024年下半年东湖高新区中级、副高职称水测出成绩了
  • 【C++】Linux平台C++实现Unix域、TCP/IP、UDP socket通信
  • 实习项目|苍穹外卖|day10
  • Long类型前后端数据不一致
  • 落地扶持丨云微客山西临汾落地会销圆满收官
  • JVM四种垃圾回收算法以及G1垃圾回收器(面试)
  • 【数据库】死锁排查方式
  • 【Hot100】LeetCode—287. 寻找重复数
  • u盘怎么重装系统_u盘重装win10系统详细图文教程【支持新旧机型】
  • ArcGIS Pro SDK (十四)地图探索 4 书签
  • 什么是WSL?
  • 近日,IBM中国宣布撤出在华两大研发中心
  • 【LLM:Fan】
  • 单体架构系统是不是已经彻底死亡?