Node.js v .env ファイル、インポート モジュール、および権限モデル

WBOY
リリース: 2024-08-09 22:37:03
オリジナル
244 人が閲覧しました

Node.js v .env files, import modules, and Permission Model

Node.js v20.6 は、2023 年 10 月 24 日から LTS バージョンの一部である素晴らしい新機能とともにリリースされました。見てみましょう!

INI 設定ファイル

dotenv パッケージに別れを告げ、Node.js が .env ファイルから環境変数を読み込めるようになりました。

リーリー

? Node.js が INI ファイルのデフォルト名を選択しなかったため、INI ファイルへのパスが必要です。

? INI ファイルが存在しない場合、ノード プロセスは失敗していないため、環境変数を指定せずに実行を開始してください。

NODE_OPTIONS をロード中

次の例のような INI 構成ファイルを使用して、Node.js の特定の環境変数 (NODE_OPTIONS など) をロードできます。
リーリー

これも同じ方法で使用できます:


リーリー

ESモジュールのプリロード

起動時に --import フラグを使用して ES モジュールをプリロードします。モジュールは、アプリケーション コードが実行される前に、エントリ ポイントも含めてロードされます。


リーリー

このフラグは、CommonJS モジュールをロードするために使用されるよく知られた --require フラグに似ています。

? --require でプリロードされたモジュールは、--import でプリロードされたモジュールよりも前に実行されます。

権限モデル

Permission Model と呼ばれる Node.js プロセスの実行中に特定のリソースへのアクセスを制限する新しいメカニズムがあります。 API はフラグ --experimental-permission の背後にあり、これを有効にすると、明示的に許可されていないすべてのリソースへのアクセスが制限されます。

ファイル システムのアクセス許可

--allow-fs-read フラグは、* を使用したすべての FileSystemRead 操作、または絶対ルートを使用した特定のパスへの操作を許可します。

リーリー

特定のパスへのアクセスのみを許可するには、絶対ルートを使用する必要があります

リーリー

?初期化モジュールも許可する必要があります。そうしないと、Node.js プロセス自体によってindex.js ファイルを読み込むことができません。

?を使用できます。作業ディレクトリへのアクセスを許可しますが、ファイル (例: ./index.js) へのパスの指定には使用できません。

リーリー

--allow-fs-write フラグにより、*.
を使用した特定のパスまたはファイル システム全体へのアクセスが許可されます。

リーリー

子プロセス

権限モデルが有効な場合、プロセスはデフォルトで子プロセスを生成できなくなります。この操作を許可するには --allow-child-process を使用する必要があります。次のコードをindex.jsに使用してみましょう

リーリー

権限モデルを有効にしてこのスニペットを実行するには、次のコマンドを使用してindex.jsを実行する必要があります:

リーリー

?子プロセスはデフォルトでは権限モデルを継承しないため、new-file.txt は正常に作成されます。

その他のオプション

この権限モデルでワーカー スレッドを作成する場合は --allow-worker フラグをチェックし、WASI インスタンスの作成を許可する場合は --allow-wasi をチェックします

結論

アプリケーションの環境変数をロードするための新しいツール、コードで必要なプリロード ES モジュールをインポートする方法、システムのセキュリティを強化するための新しい権限モデルが多数あります。

Node.js のブログにご注目ください。このチームはすべてのバージョンに素晴らしい機能を追加しています。 v22.6.0 では、初期の TypeScript サポートと DevTools を使用したネットワーク検査が提供されています。

以上がNode.js v .env ファイル、インポート モジュール、および権限モデルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!