美文网首页
dotenv + Joi 进行Node服务端相关配置

dotenv + Joi 进行Node服务端相关配置

作者: R_X | 来源:发表于2019-03-13 11:13 被阅读0次

    一、dotenv

    通过一个.env文件,将所有启动配置项写入process.env中。

    2、 .env 配置文件
    PORT=4040
    NODE_ENV=development
    

    // 2、引入 dotenv,并使用 相应配置

    require('dotenv').config();
    console.log(process.env.PORT); // 4040
    console.log(process.env.NODE_ENV);  // development
    

    二、Joi

    参数格式定义及校验

    // 定义参数 schema
    const envVarsSchema = Joi.object({
      NODE_ENV: Joi.string()
        .allow(['development', 'production', 'test', 'provision'])
        .default('development'),
      PORT: Joi.number()
        .default(4040)
    });
    // 结合 `dotenv`,进行 配置参数校验
    const { error, value: envVars } = Joi.validate(process.env, envVarsSchema);
    if (error) {
      throw new Error(`Config validation error: ${error.message}`);
    }
    const config = {
      env: envVars.NODE_ENV,
      port: envVars.PORT
    };
    
    module.exports = config;
    

    相关文章

      网友评论

          本文标题:dotenv + Joi 进行Node服务端相关配置

          本文链接:https://www.haomeiwen.com/subject/hyrzpqtx.html