Je me retrouve souvent à taper au moins deux ou trois options d'autorisation lorsque je joue avec Deno:
deno run --allow-net --allow-read --allow-env app.ts
Il existe un moyen d'échapper aux autorisations explicites.
Vous pouvez utiliser denon https://deno.land/x/denon , est un outil comme nodemon. Une chose géniale à ce sujet est qu'il inclut un denon.json où vous pouvez ajouter l'attribut "allow": en tant que tableau et ajouter les indicateurs que vous voulez.
"allow": ["net", "read", "write"]
puis dans le terminal exécutez le script pour démarrer votre application
denon start yourapp.ts
Cela fonctionnera:
deno run --allow-net --allow-read --allow-write yourapp.ts
Maintenant, lorsque vous effectuez une modification et enregistrez, il l'exécutera à nouveau.
Il a d'autres attributs sympas à ajouter comme le "unstable": true
. Essayez-le et lisez le README de denon pour plus d'informations.
J'ai créé un outil qui vise à aider à cela https://github.com/BentoumiTech/denox/
Vous pouvez spécifier vos scripts dans un deno-workspace.yml
fichier avec liste d'autorisations
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
se traduira par deno run --allow-net --allow-read --allow-env app.ts
Il prend également en charge toutes les autres options 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