通过Cloudflare Workers API部署项目
在cloudflare部署Workers项目的项目的时候,有代码要改动,用那个网页控制台太过于卡顿,非常不方便。但是termux又不支持Wrangler所以考虑使用API
准备
获得账号ID与API的Token:
- Account ID:登录 Cloudflare Dashboard → 右侧边栏找到(或者进去某个域,然后下滑就可以看到账号ID了)
- API Token:My Profile → API Tokens → Create Token(选择 Edit Cloudflare Workers 模板)
如果实在找不到,可以参考我的这篇文章自动删除Cloudflare域名缓存脚本中关于找到账号ID与生成API的Token的方法。
找到你Works的名称以及相关绑定的名称
- 获得完整的Workers名字如
xxx-xxx-xxx或者你自己起的什么名字 - 如果绑定R2,获得存储桶完整名字
- 如果绑定KV,获得KV-ID(注意是ID不是名称)
- 如果还有其他绑定请查询官方文档
开始干活
这里绑定只展示同时绑定R2和KV,其他绑定请自行查阅官方文档,当然如果你没任何绑定那么请忽略本提示
准备文件
在一个空目录里面,依次生成如下文件
metadata.json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| { "main_module": "worker.js", //入口文件 "bindings": [ //配置的绑定,如果没有请设置写为空内容,如"bindings": [] { "type": "kv_namespace", "name": "绑定后变量名", "namespace_id": "你的KVID" }, { "type": "r2_bucket", "name": "绑定后变量名", "bucket_name": "你的R2存储桶名" } ] }
|
push.sh
1 2 3 4 5 6 7 8 9 10 11
| #!/bin/bash export CF_ACCOUNT_ID="你的ID" export CF_API_TOKEN="你的Token" WORKER_NAME="你的Worker名字" ENTRY_FILE="worker.js"
curl -X PUT "https://api.cloudflare.com/client/v4/accounts/$CF_ACCOUNT_ID/workers/scripts/$WORKER_NAME" \ -H "Authorization: Bearer $CF_API_TOKEN" \ -F "metadata=@metadata.json;type=application/json" \ -F "$ENTRY_FILE=@./$ENTRY_FILE;type=application/javascript+module"
|
worker.js
执行
在终端cd进入你放置刚刚那些文件的目录,输入如下内容
等待执行即可,如果成功将会返回类似于如下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| { "result": { "created_on": "2026-03-15T01:45:23.343582Z", "modified_on": "2026-03-28T23:39:57.342352Z", "id": "xxx", "tag": "xxx", "entry_point": "worker.js", "tags": null, "deployment_id": "xxx", "tail_consumers": null, "logpush": false, "has_assets": false, "has_modules": true, "etag": "xxx", "handlers": [ "fetch" ], "last_deployed_from": "api", "usage_model": "standard", "startup_time_ms": 0 }, "success": true, "errors": [], "messages": [] }
|
如果失败请自行根据提示排查问题
结束语
希望这些内容可以帮到你,理论上这些文件名都可以修改,但是修改后注意与变量的修改
鸣心/Write