APIキーに関連する従来の代替方法は、environment variablesを使用することです。これは、オペレーティングシステムレベルの構成機能です。各プロセスには独自の環境変数があり、通常は親プロセスから継承されます。慣例により、環境変数には大文字の名前が付けられます。
node.jsでは、process.env
から環境変数にアクセスできます。あなたはこのようなアプリケーション実行している場合たとえば、:それは渡す保つために持っている、しかし、退屈することができ
process.env.MY_VARIABLE
:
$ MY_VARIABLE=test node app.js
をあなたは経由MY_VARIABLE
環境変数の値にアクセスすることができますプログラムの呼び出しごとに環境変数を設定します。だから、dotenvのようなパッケージがあり、あなたの環境変数をテキストファイルに保存することができます。
具体的には、あなたがファイルを持っていますが.env
と呼ばれ、その中にあなたが持っているかもしれません:
MY_VARIABLE=test
OTHER_VARIABLE=foo
をごapp.js
の開始時に、あなたがして行います。
require('dotenv').config();
これは、環境を読み込みます.env
ファイルの可変値。あなたが他の環境変数にアクセスするとあなたは、それらにアクセスすることができます。
console.log("MY_VARIABLE: " + process.env.MY_VARIABLE);
console.log("OTHER_VARIABLE: " + process.env.OTHER_VARIABLE);
今、あなたは明示的に呼び出し時にアプリケーションに環境変数を渡す必要はありません、あなたはいつものようにそれを実行することができます例:
$ node app.js
あなたはパス1明示的に行う場合、それはあなたがあなたの.env
ファイルに与えたものは何でも値より優先されます:
$ MY_VARIABLE=bar node app.js
MY_VARIABLE
の環境変数の値は、"testing"
の代わりに"bar"
になりました。 OTHER_VARIABLE
は明示的に渡されないため、ファイルに指定されている値は"foo"
のままです。
.jsファイルに保存して値をエクスポートすると何が問題になりますか?それから、必要な場所でそれらを要求するだけです。明らかに、私はあなたの質問を理解していません。 –
あなたがグローバルにそれをローカルに必要としたくないならば。 – Kuf