node.js - NodeJs 分离 Dev 和 Prod 环境变量
问题描述
我有一个 nodejs 服务器,在我的服务文件中,我从我创建的 config.json 文件中获取请求的 url,如下所示。问题是我想对开发使用不同的变量 url,对生产使用不同的变量 url。换句话说,当在开发环境中运行时,URL 应该从 config.json 文件运行 prod url,而在 config.json 中运行 dev url。我对 nodejs 中的环境变量不熟悉,因此将不胜感激。
我的 service.js 文件之一是:
const config = require('../config');
async function getOrderLineItems(data) {
const options = {
method: 'GET',
url: config.cloverApiUrl ,
headers: {
Authorization: 'Bearer ' + data.token,
ContentType: 'application/json'
},
};
const response = await got(options);
return response.body;
}
我的 config.json 文件是:
{
"connectionString": "connectionString",
"secret": "secret",
"cloverApiUrl": "cloverApiUrl",
"clientSecret": "clientSecret",
"keyUrl": "keyUrl",
"tokenUrl": "tokenUrl"
}
解决方案
解决方案1:
要么安装配置包。
项目目录看起来像,
配置
- 默认.json
https://www.npmjs.com/package/config
- 否则在项目目录中创建一个 .env 文件,然后通过 process.en.variable_name 访问它
推荐阅读
- java - 静态类中的重复局部变量
- spring - 启动 spring 工具套件时发生错误
- swift - 我想知道使用 Firebase 身份验证获取的 Twitter 访问令牌的到期日期
- react-native - React native keyboardAvoidView 覆盖了一半 textInput
- python - 如何将内部列表存储到外部列表
- iphone - React Native:更改应用商店上传的目标 sdk 版本
- c++ - C ++声明一个继承的构造函数?
- kubernetes - 用于自定义定义或运算符的 kubectl vs json api
- keycloak - 何时在 Keycloak 中使用领域角色?
- pandas - 如何在 Pandas 列中添加数据