2016-04-03 4 views
0

私のapp.jsファイルに私のapiキーとmongo URLを直接ハードコードするべきではないことが分かります。どこに置くべきですか?私はconfig.jsというファイルにそれらを入れて、それをモジュールとしてエクスポートし、それを私のapp.jsファイルに必要としますか?何をするのが最善の方法なのですか?私がプロダクションに移ったとき、私は何も変更する必要はありませんか?APIキーリファレンスとenvファイルをNode.jsアプリケーションに配置する必要はありますか?

答えて

1
  • 私はconfigモジュールで行くと思います。これはあなたのNODE_ENVの値に従って適切なjsonファイルをロードする単純なlibです。 たとえば、NODE_ENV=development npm startと指定すると、development.jsonなどがロードされます。

  • もう1つの可能性:あなたのコードの外にシステム内のフォルダを定義し、そこからファイルjsonをロードしてください。たとえば、/etc/opt/my-project-configs/を定義した場合は、ローカルシステムのフォルダと/のプロフェッショナルのフォルダにそのフォルダを作成します。あなたのコードは現在どの環境が実際に動作しているのか分からないが、適切な設定ファイルをロードする。あなたは

    module.exports = { 
        accessKeyId: process.env.SES_ACCESS_KEY_ID 
    } 
    

    ような何かを行うことができますconfig.jsファイルで

+0

これは以来ですが、私は私の設定ファイルを.gitignoreファイルに入れるべきだと思います。一度githubからherokuに行くと、herokuはrequire( "config.js")、このファイルではなくモジュールを見て何をしますか? – josh

0

今の設定を使用するように、端末

export env.SES_ACCESS_KEY_ID='yourSecretKey' 

で次のコマンドを使用してenvironmemtであなたの鍵を入れ

を行います
var config = require('relativ/path/to/config.js'); 
someFunction(config.accessKeyId); 

それが助けてくれることを祈っています:)

関連する問題