六维教程

Cloudflare Workers 快速部署

这一篇完全不用写命令行,只用浏览器完成第一个 Worker 的创建和线上部署。先把成就感建立起来,后面再学工程化的开发方式。

注册 Cloudflare 账号

访问 dash.cloudflare.com 注册账号,用邮箱注册即可,选择免费计划,不需要绑定信用卡。

创建第一个 Worker

登录后按以下步骤操作

  1. 左侧菜单进入 Workers 和 Pages
  2. 点击 创建 按钮
  3. 选择 Hello World 模板
  4. 输入项目名称,例如 my-first-worker
  5. 点击 部署 按钮

几秒钟后部署完成,页面会显示一个网址,格式为 https://my-first-worker.你的子域.workers.devworkers.dev 是 Cloudflare 免费提供的官方子域名,每个 Worker 都会自动获得一个,点击访问就能看到 Hello World 页面。

默认代码结构

部署完成后点击 编辑代码 进入在线编辑器,可以看到模板自带的代码

export default {
  async fetch(request, env, ctx) {
    return new Response("Hello World!");
  },
};

这段代码是 Workers 的核心骨架,需要理解四个部分

部分 作用
export default 导出 Worker 的入口对象,平台通过它找到你的代码
fetch 请求处理函数,每次有 HTTP 请求进来都会被调用
request 请求对象,包含请求方法、地址、请求头、请求体等
env 环境对象,用来读取环境变量和数据库等绑定资源(后面讲)
ctx 上下文对象,用来控制后台任务等高级操作(后面讲)

只要记住一件事,Workers 的编程模型就是”收到请求,返回响应”。fetch 函数负责接收请求,return new Response(...) 负责返回结果。所有复杂的业务逻辑都是围绕这两步展开的。

修改代码并重新部署

把返回内容改一下,体验代码更新的完整流程

export default {
  async fetch(request, env, ctx) {
    return new Response("Hello Cloudflare!");
  },
};

点击右上角 保存并部署,稍等片刻重新打开之前的网址,页面内容就变成了 Hello Cloudflare。

验证线上运行效果

在浏览器地址栏多访问几个路径试试,例如 https://my-first-worker.你的子域.workers.dev/任意路径,你会发现无论访问什么路径,返回的都是同一段文字。这是因为代码没有做任何路径判断,这就是后续路由章节要解决的问题。

仪表盘的能力边界

在线编辑器适合快速改小东西,但工程化开发有它的明显短板

场景 仪表盘在线编辑器 命令行工具 Wrangler
快速改几行代码 方便 稍繁琐
大型项目开发 不方便 方便
本地调试 不支持 支持
管理数据库和密钥 部分支持 全面支持
多人协作与版本管理 不方便 配合 Git 使用

真实项目几乎都使用命令行工具开发,仪表盘只用来做线上配置。下一篇开始搭建本地开发环境,把 Wrangler 用起来。

上一篇 Cloudflare Workers 教程
下一篇 Cloudflare Workers 环境搭建

上一篇
Cloudflare Workers 教程
下一篇
Cloudflare Workers 环境搭建