How to solve Deno error: Uncaught PermissionDenied
How to solve Deno error: Uncaught PermissionDenied
当 运行 一个应用程序使用 deno run app.ts
命令并给出 error: Uncaught PermissionDenied
error: Uncaught PermissionDenied: access to environment variables, run again with the --allow-env flag
at unwrapResponse ($deno$/ops/dispatch_json.ts:43:11)
at Object.sendSync ($deno$/ops/dispatch_json.ts:72:10)
at Object.toObject ($deno$/ops/os.ts:33:12)
at file:///opt//deno/app.ts:5:22
这类问题我们需要在运行应用
时设置一个标志
不同类型的权限
--allow-env
Allow environment access
--allow-hrtime
Allow high resolution time measurement
--allow-net=<allow-net>
Allow network access
--allow-plugin
Allow loading plugins
--allow-read=<allow-read>
Allow file system read access
--allow-run
Allow running subprocesses
--allow-write=<allow-write>
Allow file system write access
deno run -allow-all app.ts
例子
//Give an environment permission
deno run --allow-env app.ts
//Give an all permission
deno run -allow-all app.ts
OR
deno run -A app.ts
参考 link:
在您的控制台日志中,尝试访问 environment variables 导致的错误,在 Deno 中您必须 provide/grant 权限标志才能访问环境变量:
如果您直接从终端读取环境变量:
> TEST=123 deno --allow-env app.ts
如果您正在从 .env 文件中读取环境变量:
> TEST=123 deno --allow-env --allow-read app.ts
注意:始终优先least privilege principle并且不要任意授予应用程序所有权限。
当 运行 一个应用程序使用 deno run app.ts
命令并给出 error: Uncaught PermissionDenied
error: Uncaught PermissionDenied: access to environment variables, run again with the --allow-env flag
at unwrapResponse ($deno$/ops/dispatch_json.ts:43:11)
at Object.sendSync ($deno$/ops/dispatch_json.ts:72:10)
at Object.toObject ($deno$/ops/os.ts:33:12)
at file:///opt//deno/app.ts:5:22
这类问题我们需要在运行应用
时设置一个标志不同类型的权限
--allow-env
Allow environment access
--allow-hrtime
Allow high resolution time measurement
--allow-net=<allow-net>
Allow network access
--allow-plugin
Allow loading plugins
--allow-read=<allow-read>
Allow file system read access
--allow-run
Allow running subprocesses
--allow-write=<allow-write>
Allow file system write access
deno run -allow-all app.ts
例子
//Give an environment permission
deno run --allow-env app.ts
//Give an all permission
deno run -allow-all app.ts
OR
deno run -A app.ts
参考 link:
在您的控制台日志中,尝试访问 environment variables 导致的错误,在 Deno 中您必须 provide/grant 权限标志才能访问环境变量:
如果您直接从终端读取环境变量:
> TEST=123 deno --allow-env app.ts
如果您正在从 .env 文件中读取环境变量:
> TEST=123 deno --allow-env --allow-read app.ts
注意:始终优先least privilege principle并且不要任意授予应用程序所有权限。