跳到主要内容

使用Cloudflare Workers

  • 通过hono运行在 Cloudflare Workers 应用程序
  • Cloudflare Workers 是 Cloudflare 提供的一种无服务器计算平台
    • 无服务器架构:无需管理服务器或基础设施,代码直接部署到 Cloudflare平台
    • 基于 V8 JavaScript 引擎

安装Cloudflare相关库​

  • wrangler
  • @cloudflare/workers-types
bash
pnpm add wrangler @cloudflare/workers-types -D

Wrangler配置​

  • Wrangler 是一个由Cloudflare 提供的命令行界面 (CLI) 工具,它用于创建、构建和发布Cloudflare Workers 项目

环境变量问题

  • 普通变量(Variable)默认会被 Wrangler 部署配置覆盖。 在控制台保存的变量,如果没有写进 wrangler.jsonc,下次部署就可能被移除。
  • Secret 通常会保留
  • 通过keep_vars可以保存变量配置
json
{
"name": "ai-canvas-api",
"main": "src/cloudflare.ts",
"compatibility_date": "2026-10-14",
"compatibility_flags": ["nodejs_compat"],
// 保留在控制面板中配置的特定于环境的身份验证变量, 避免被覆盖
"keep_vars": true,
// Reach this Worker through the Pages MODEL_API service binding only.
"workers_dev": false,
"preview_urls": false,
"vars": {
"PROVIDER_CONCURRENCY": "2",
"BATCH_MAX": "16",
"POLL_INTERVAL_MS": "5000",
"IMAGE_TIMEOUT_MS": "600000",
"VIDEO_TIMEOUT_MS": "1800000",
"QUERY_RETRIES": "3"
}
}

安装最新的 Visual C++ Redistributable​

环境配置​

  • 在使用 Cloudflare 的 Wrangler 工具进行本地开发时, 配置 .dev.vars 文件来管理环境变量,这些变量在本地开发环境中会覆盖 wrangler.toml 文件中的设置