什么是 Cloudflare Workers
官网介绍
Cloudflare Workers provides a serverless execution environment that allows you to create entirely new applications or augment existing ones without configuring or maintaining infrastructure.
Cloudflare Workers 提供了一个齐全自动化的服务器端执行环境,能够让你创立齐全新的应用程序或者加强现有的应用程序,而不须要配置或保护基础设施。
相当于腾讯云的云函数一类的服务。
Wrangler-CLI
Wrangler-CLI 是 Cloudflare Workers 的命令行工具,提供了一个简略的接口,能够让你在本地开发环境中应用 Cloudflare Workers。
这样咱们就能够在本地进行开发,不须要上传到服务端。
装置
应用 NPM
npm i @cloudflare/wrangler -g应用 Yarn
yarn global add @cloudflare/wrangler受权
装置之后,须要受权才可失常应用 Wrangler-CLI。
在受权之前,先确保有 Cloudflare 的账号,没有的能够去官网注册。
有账号之后,能够在命令行中输出上面命令来登录。
wrangler login会尝试应用零碎默认浏览器关上登陆页面,如何没有弹出浏览器,能够复制命令行输入的一串登陆链接,而后手动关上。
关上登陆页面后,输出账号密码即可实现受权。
创立新我的项目
创立默认模板的新我的项目
wrangler generate my-worker会主动创立一个新的我的项目,并且会在当前目录下生成一个新的文件夹,文件夹名称为 my-worker。
我的项目目录构造如下:
.cargo-ok.gitignore.prettierrcCODE_OF_CONDUCT.mdindex.js # 入口文件LICENSE_APACHELICENSE_MITpackage.jsonREADME.mdwrangler.toml # 配置文件和一般前端我的项目的最大不同是多了个 wrangler.toml 文件,这个文件是用来配置 Cloudflare Worker 的。
配置我的项目
关上 wrangler.toml 文件,能够看到配置我的项目的内容如下:
name = "my-worker" // 项目名称,必须填写,会作为域名的前缀type = "javascript" // 我的项目类型,必须填写,可选值为 `javascript` 或 `webpack` 或 `rust`account_id = "" // 账户 ID,能够在 dashboard 中的 worker 页面查看workers_dev = true // 是否公布到已申请的 [subdomain].worker.dev 域名,不写默认为 falseroute = "" // fetch 触发器的路由,不写默认为 `/`zone_id = ""compatibility_date = "2022-04-27"启动我的项目
看完根本配置后,能够在命令行中运行上面命令来进行调试:
wrangler dev须要连贯 Cloudflare Workers 的服务器,国内启动可能失败,多试几次。
启动胜利会看到如下输入:
watching "./" Listening on http://127.0.0.1:8787关上浏览器输出 http://127.0.0.1:8787/ 即可看到我的项目的输入。
公布我的项目
当我的项目开发实现之后,通过命令行进行公布:
wrangler publish会主动上传到 Cloudflare Workers 的服务器,如果服务不存在则会主动创立。
公布胜利后,会在命令行输入如下信息:
Basic JavaScript project found. Skipping unnecessary build! Successfully published your script to https://my-worker.[subdomain].workers.dev总结
Cloudflare 尽管提供了线上调试的环境,但本地开发还能够联合 Webpack,Lerna 等工具进行更简单的开发,从而实现更弱小的性能。
参考资料:
- 官网文档