将本地开发使用的 secrets 放在 .dev.vars 文件或 .env 文件中,与 Wrangler 配置文件位于同一目录。
这些文件应使用 dotenv ↗ 语法格式化。例如:
SECRET_KEY="value"
API_TOKEN="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"要为每个 Cloudflare 环境设置不同的 secrets,请创建名为 .dev.vars.<environment-name> 或 .env.<environment-name> 的文件。
在本地开发中选择 Cloudflare 环境时,会先加载对应的环境特定文件,再加载通用的 .dev.vars(或 .env)文件。
- 使用
.dev.vars.<environment-name>文件时,每个环境必须定义所有 secrets。如果存在.dev.vars.<environment-name>,则只会加载该文件;不会加载.dev.vars文件。 - 相比之下,所有匹配的
.env文件都会被加载,值会被合并。对于每个变量,使用最特定文件中的值,优先级如下:.env.<environment-name>.local(最特定).env.local.env.<environment-name>.env(最不特定)
以下步骤介绍如何使用 .dev.vars 或 .env 文件为本地开发设置环境变量。
-
在项目根目录创建
.dev.vars/.env文件。 -
添加键值对:
.dev.vars/.envini API_HOST="localhost:3000" DEBUG="true" SECRET_TOKEN="my-local-secret-token" -
运行
dev命令Wrangler
npx wrangler devyarn wrangler devpnpm wrangler devVite 插件
npx vite devyarn vite devpnpm vite dev
要模拟不同的本地环境,你可以提供特定于环境的文件。
例如,你可能有一个 staging 环境,其设置与开发环境不同。
-
创建名为
.dev.vars.<environment-name>/.env.<environment-name>的文件。例如,我们可以使用.dev.vars.staging/.env.staging。 -
添加键值对:
.dev.vars.staging/.env.stagingini API_HOST="staging.localhost:3000" DEBUG="false" SECRET_TOKEN="staging-token" -
运行
dev命令时指定环境:Wrangler
npx wrangler dev --env stagingyarn wrangler dev --env stagingpnpm wrangler dev --env stagingVite 插件
CLOUDFLARE_ENV=staging npx vite devCLOUDFLARE_ENV=staging yarn vite devCLOUDFLARE_ENV=staging pnpm vite dev- 如果使用
.dev.vars.staging,则只会应用该文件中的值,而不会应用.dev.vars中的值。 - 如果使用
.env.staging,这些值会与.env文件合并,最具体的文件优先。
- 如果使用
- 要了解如何在 Wrangler 配置中配置多个环境,请阅读文档。
- 要了解如何一起使用 Wrangler 环境与 Vite 环境,请阅读 Vite 插件文档