[ PROMPT_NODE_24508 ]
Wrangler 配置说明
[ SKILL_DOCUMENTATION ]
# Wrangler 配置
wrangler.jsonc(推荐)的配置参考。
## 配置格式
**推荐使用 wrangler.jsonc** (v3.91.0+) - 提供模式验证。
c
{
"$schema": "./node_modules/wrangler/config-schema.json",
"name": "my-worker",
"main": "src/index.ts",
"compatibility_date": "2025-01-01", // 使用当前日期
"vars": { "API_KEY": "dev-key" },
"kv_namespaces": [{ "binding": "MY_KV", "id": "abc123" }]
}
## 字段继承
可继承:`name`, `main`, `compatibility_date`, `routes`, `triggers`
不可继承(按环境定义):`vars`, 绑定(KV, D1, R2 等)
## 环境
c
{
"name": "my-worker",
"vars": { "ENV": "dev" },
"env": {
"production": {
"name": "my-worker-prod",
"vars": { "ENV": "prod" },
"route": { "pattern": "example.com/*", "zone_name": "example.com" }
}
}
}
部署:`wrangler deploy --env production`
## 路由
c
// 自定义域名(推荐)
{ "routes": [{ "pattern": "api.example.com", "custom_domain": true }] }
// 基于区域的路由
{ "routes": [{ "pattern": "api.example.com/*", "zone_name": "example.com" }] }
// workers.dev
{ "workers_dev": true }
## 绑定
c
// 变量
{ "vars": { "API_URL": "https://api.example.com" } }
// KV
{ "kv_namespaces": [{ "binding": "CACHE", "id": "abc123" }] }
// D1
{ "d1_databases": [{ "binding": "DB", "database_id": "abc-123" }] }
// R2
{ "r2_buckets": [{ "binding": "ASSETS", "bucket_name": "my-assets" }] }
// Durable Objects
{ "durable_objects": {
"bindings": [{
"name": "COUNTER",
"class_name": "Counter",
"script_name": "my-worker" // 外部 DO 需要此项
}]
} }
{ "migrations": [{ "tag": "v1", "new_sqlite_classes": ["Counter"] }] }
// 服务绑定
{ "services": [{ "binding": "AUTH", "service": "auth-worker" }] }
// 队列
{ "queues": {
"producers": [{ "binding": "TASKS", "queue": "task-queue" }],
"consumers": [{ "queue": "task-queue", "max_batch_size": 10 }]
} }
// Vectorize
{ "vectorize": [{ "binding": "VECTORS", "index_name": "embeddings" }] }
// Hyperdrive (需要 nodejs_compat_v2 以支持 pg/postgres)
{ "hyperdrive": [{ "binding": "HYPERDRIVE", "id": "hyper-id" }] }
{ "compatibility_flags": ["nodejs_compat_v2"] } // 用于 pg/postgres
// Workers AI
{ "ai": { "binding": "AI" } }
// 工作流
{ "workflows": [{ "binding": "WORKFLOW", "name": "my-workflow", "class_name": "MyWorkflow" }] }
// 密钥存储(集中式密钥)
{ "secrets_store":