Deno 允许所有权限
Deno allow all permissions
我经常发现自己在玩 Deno 时至少输入两个或三个权限选项:
deno run --allow-net --allow-read --allow-env app.ts
有一种方法可以逃避显式权限。
有一个很好的选项-A
允许所有权限。
deno run -A app.ts
重要提示:这是不安全的,应该仅用于实验。
开发实际应用程序时更喜欢显式权限。
您可以使用:--allow-all
或短选项 -A
来允许所有权限。
请记住,它将包括以下所有权限:
--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
我创建了一个工具来帮助解决这个问题https://github.com/BentoumiTech/denox/
您可以在 deno-workspace.yml
具有权限列表的文件中指定您的脚本
scripts:
# "denox run start" will execute app.ts with --allow-net --allow-read --allow-env permissions
start:
file: app.ts
deno_options:
allow-net: true
allow-read: true
allow-env: true
$ deno install -Af -n denox https://denopkg.com/BentoumiTech/denox/denox.ts
$ denox run start
将转换为 deno run --allow-net --allow-read --allow-env app.ts
它还支持所有其他 deno 选项
allow-all, allow-env, allow-hrtime, allow-net, allow-plugin, allow-read, allow-run,
allow-write, cached-only, cert, config, importmap, inspect, inspect-brk, lock, lock-write,
log-level, no-remote, quiet, reload, seed, unstable, v8-flags
你可以使用 denon https://deno.land/x/denon,是一个类似 nodemon 的工具。一个很棒的事情是它包含一个 denon.json ,您可以在其中添加属性 "allow": 作为数组并添加您想要的标志。
"allow": ["net", "read", "write"]
然后在终端中 运行 启动应用程序的脚本
denon start yourapp.ts
这将 运行:
deno run --allow-net --allow-read --allow-write yourapp.ts
现在,当您进行更改并保存时,它会再次 运行 它。
它还有其他很酷的属性可以添加,例如 "unstable": true
。试一试并阅读 denon 的自述文件以了解更多信息。
我经常发现自己在玩 Deno 时至少输入两个或三个权限选项:
deno run --allow-net --allow-read --allow-env app.ts
有一种方法可以逃避显式权限。
有一个很好的选项-A
允许所有权限。
deno run -A app.ts
重要提示:这是不安全的,应该仅用于实验。
开发实际应用程序时更喜欢显式权限。
您可以使用:--allow-all
或短选项 -A
来允许所有权限。
请记住,它将包括以下所有权限:
--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
我创建了一个工具来帮助解决这个问题https://github.com/BentoumiTech/denox/
您可以在 deno-workspace.yml
具有权限列表的文件中指定您的脚本
scripts:
# "denox run start" will execute app.ts with --allow-net --allow-read --allow-env permissions
start:
file: app.ts
deno_options:
allow-net: true
allow-read: true
allow-env: true
$ deno install -Af -n denox https://denopkg.com/BentoumiTech/denox/denox.ts
$ denox run start
将转换为 deno run --allow-net --allow-read --allow-env app.ts
它还支持所有其他 deno 选项
allow-all, allow-env, allow-hrtime, allow-net, allow-plugin, allow-read, allow-run,
allow-write, cached-only, cert, config, importmap, inspect, inspect-brk, lock, lock-write,
log-level, no-remote, quiet, reload, seed, unstable, v8-flags
你可以使用 denon https://deno.land/x/denon,是一个类似 nodemon 的工具。一个很棒的事情是它包含一个 denon.json ,您可以在其中添加属性 "allow": 作为数组并添加您想要的标志。
"allow": ["net", "read", "write"]
然后在终端中 运行 启动应用程序的脚本
denon start yourapp.ts
这将 运行:
deno run --allow-net --allow-read --allow-write yourapp.ts
现在,当您进行更改并保存时,它会再次 运行 它。
它还有其他很酷的属性可以添加,例如 "unstable": true
。试一试并阅读 denon 的自述文件以了解更多信息。