使用 angular-fullstack 生成器时,在后端访问环境变量的最佳方式是什么?
What's the best way to access env variables on the back end when using angular-fullstack generator?
我正在使用 Yeoman 的 angular-fullstack 生成器。
并且我更新了我的 server/config/environment/local.env.js 文件:
module.exports = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID : {
API_KEY : 'my_api_key'
},
DEBUG: ''
};
如何最好地使用 SENDGRID.API_KEY
在我的服务器文件上的其他位置,例如在我的 server/api/thing/thing.controller.js
上?
注意这是不是对this similar question的重复问题,因为我想在服务器端使用。
你是说全局对象?
global.globalConfig = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID : {
API_KEY : 'my_api_key'
},
DEBUG: ''
};
module.exports = global.globalConfig;
我是如何解决这个问题的:
简化server/config/environment/local.env.js
:
module.exports = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID_API_KEY: 'my_api_key',
DEBUG: ''
};
更新了我的配置文件server/config/environment/index.js
:
var all = {
env: process.env.NODE_ENV,
// ... other configs here
// SendGrid connection options
sendgrid: {
'api_key': process.env.SENDGRID_API_KEY
}
};
在我的控制器文件中检索了我的 sendgrid api_key server/api/thing/thing.controller.js
:
import config from '../../config/environment';
// using SendGrid's Node.js Library
var sendgrid = require("sendgrid")(config.sendgrid.api_key);
我正在使用 Yeoman 的 angular-fullstack 生成器。
并且我更新了我的 server/config/environment/local.env.js 文件:
module.exports = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID : {
API_KEY : 'my_api_key'
},
DEBUG: ''
};
如何最好地使用 SENDGRID.API_KEY
在我的服务器文件上的其他位置,例如在我的 server/api/thing/thing.controller.js
上?
注意这是不是对this similar question的重复问题,因为我想在服务器端使用。
你是说全局对象?
global.globalConfig = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID : {
API_KEY : 'my_api_key'
},
DEBUG: ''
};
module.exports = global.globalConfig;
我是如何解决这个问题的:
简化server/config/environment/local.env.js
:
module.exports = {
DOMAIN: 'http://localhost:9000',
SESSION_SECRET: 'vfsite2-secret',
SENDGRID_API_KEY: 'my_api_key',
DEBUG: ''
};
更新了我的配置文件server/config/environment/index.js
:
var all = {
env: process.env.NODE_ENV,
// ... other configs here
// SendGrid connection options
sendgrid: {
'api_key': process.env.SENDGRID_API_KEY
}
};
在我的控制器文件中检索了我的 sendgrid api_key server/api/thing/thing.controller.js
:
import config from '../../config/environment';
// using SendGrid's Node.js Library
var sendgrid = require("sendgrid")(config.sendgrid.api_key);