Jus*_*ith 11 cloudflare-workers
我按照本指南通过 cloudflare 工作人员将机密添加到我的产品环境中:
https://developers.cloudflare.com/workers/platform/environment-variables/#comparing-secrets-and-environment-variables
我可以通过 添加新的机密wrangler secret put,并且可以在仪表板中看到它们。当我使用 wrangler 在本地运行代码时,看起来变量并未被注入。我收到这样的错误:
Uncaught ReferenceError: TOKEN is not defined
at line 0
at throwFetchError (/Users/justin.beckwith/.nvm/versions/node/v16.14.0/lib/node_modules/wrangler/wrangler-dist/cli.js:134316:17)
at fetchResult (/Users/justin.beckwith/.nvm/versions/node/v16.14.0/lib/node_modules/wrangler/wrangler-dist/cli.js:134287:5)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async previewToken (/Users/justin.beckwith/.nvm/versions/node/v16.14.0/lib/node_modules/wrangler/wrangler-dist/cli.js:134658:29)
at async createWorker (/Users/justin.beckwith/.nvm/versions/node/v16.14.0/lib/node_modules/wrangler/wrangler-dist/cli.js:134675:17)
at async start (/Users/justin.beckwith/.nvm/versions/node/v16.14.0/lib/node_modules/wrangler/wrangler-dist/cli.js:136075:16) {
Run Code Online (Sandbox Code Playgroud)
我知道秘密已经设置,据我所知,这些值应该是自动注入的。关于我在这里缺少什么有什么想法吗?谢谢你!
我从这里得到了答案。您可以创建名为 的文件.dev.vars,并将机密放入文件中。牧马人2使用命令时会自动绑定$ wrangler dev
例子:
.dev.vars文件中API_KEY_0 = "YOU_SECRET_0"
API_KEY_1 = "YOU_SECRET_1"
Run Code Online (Sandbox Code Playgroud)
$ wrangler dev
...
Your worker has access to the following bindings:
- Vars:
- API_KEY_0: "(hidden)"
- API_KEY_1: "(hidden)"
...
Run Code Online (Sandbox Code Playgroud)
.ts你在or中编码.jsinterface Env {
API_KEY_0: string
API_KEY_1: string
}
export default {
async fetch(request: Request, env: Env, context: ExecutionContext): Promise<Response> {
console.log(env.API_KEY_0, env.API_KEY_1)
}
}
Run Code Online (Sandbox Code Playgroud)
export default {
async fetch(request, env, context) {
console.log(env.API_KEY_0, env.API_KEY_1)
}
}
Run Code Online (Sandbox Code Playgroud)
供你参考
| 归档时间: |
|
| 查看次数: |
3626 次 |
| 最近记录: |