[英]How to set a URI as a variable depending on if it is in production environment or not
当前有一个尝试在heroku上部署的MERN应用程序。 我有通过本地导入配置文件声明的mongodb URI,但是在heroku上,我将heroku配置设置为使用process.env.mongoURI
。 设置代码的好方法是什么,以便在本地运行时使用本地配置文件,而在heroku中运行时使用heroku配置呢? 到目前为止,这是我一直在尝试的方法,但没有用。
if (process.env) { const keys = null } else { const keys = require('./config/keys') }
let db = ''; if (process.env) { db = process.env.mongoURI } else { db = keys.mongoURI }
这是我的方法。 我为不同的环境创建了一个不同的配置文件。 例如:
我的配置文件:
const environment = {};
environment.development = {
mongoURI: 'Your mongo uri',
port: '5000',
secret: "YOUR SECRET"
};
environment.production = {
mongoURI: 'Your mongo uri',
port: 'YOUR PORT',
secret: "YOUR SECRET"
};
var currentEnvironment = typeof(process.env.NODE_ENV) == 'string' ? process.env.NODE_ENV.tolower() : "";
var environmentToExport = typeof(environment[currentEnvironment]) == 'string' ? environment[currentEnvironment] : environment.development;
module.exports = environmentToExport;
您还需要在本地计算机上设置NODE_ENV才能起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.