Mat*_*ols 9 environment-variables cloudflare-workers
我有一个 CloudFlare Worker,在 CF 设置..环境变量界面中设置了环境变量。我也有这个 wrangler.toml
在我的工作人员的 index.js 中,我有读取变量 REGISTRATION_API_URL 的代码。如果代码在已部署的环境中运行,那么它会将 CF 设置中的值注入 REGISTRATION_API_URL 中。
但如果我运行
wrangler dev
或
wrangler dev --env local
则 REGISTRATION_API_URL 未定义。
最初我预计该变量将由 CF 设置值填充,但事实并非如此。所以我尝试了这里显示的 wrangler.toml 中的两个变量设置,但没有区别。我花了很多时间搜索文档和更大的网络。
本地开发环境是否支持环境变量?人们想出了任何解决方法吗?目前我正在寻找未定义的变量并使用硬编码值定义变量,但这不是一个很好的答案。
使用牧马人1.16.0
谢谢。
IMO 文档可能更清晰,但如果您使用较新的模块语法,这些变量将无法用作全局变量。
\n\n\n模块工作人员的环境变量
\n部署模块工作线程时,任何绑定都不能用作全局运行时变量。相反,它们作为参数传递给处理程序\xe2\x80\x93 请参阅
\nFetchEvent
文档以获取进一步的比较和示例。
这是一个例子。
\nexport default {\n async fetch(request, env, context) {\n return new Response(env.MY_VAR);\n }\n};\n
Run Code Online (Sandbox Code Playgroud)\nKV 命名空间也可以在同一对象中使用。
\nhko*_*hko -2
也许有点晚了,但是:不,我认为你不能
但是:您始终可以使用 self["YOUR_ENV_VARIABLE"] 来获取值,然后从那里开始(不幸的是文档没有提到这一点)
以下是我个人在 Workers Site 项目中获取发布版本的方法(通常通过管道/操作插入,然后通过 HtmlRewriter 插入到 index.html 中):
const releaseVersion = self["RELEASE_VERSION"] || 'unknown'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5421 次 |
最近记录: |