env-schema 环境变量check npm 包

基于nodejs 的应用开发中基于环境变量的配置管理是很场景的,env-schema 是一个集成了json schema 以及dotenv 工具的一个npm包
可以增强基于dotenv 的配置管理(缺少check)

参考试用

  • app.js
 
const envSchema = require('env-schema')
const schema = {
    type: 'object',
    required: [ 'PORT' ],
    properties: {
      PORT: {
        type: 'number',
        default: 3000
      },
      NAME: {
        type: 'string',
        default: 'John'
      }
    }
}
 
const config = envSchema({
  schema: schema,
  dotenv: true // load .env if it is there, default: false
})
console.log(config)
  • .env 配置
PORT=33333
NAME=dalong
  • 运行

如果数据类型是正确的,会正常输出,如果有问题,输出就会抛出一个exception

 

说明

环境变量的check 在nodejs 应用中比较常见,包含了类型转换,类型检查,默认值,env-schema 是一个可选的工具,类似的工具包实际上很多,cube.js 框架中自己开发了独立的工具包

参考资料

https://www.npmjs.com/package/env-schema
https://github.com/fastify/env-schema

posted on   荣锋亮  阅读(26)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2022-10-17 dremio HomeFileSystemStoragePlugin简单介绍
2022-10-17 dremio 的服务管理
2022-10-17 dremio 的几种插件
2022-10-17 dremio AbstractRecordReader 简单说明一
2022-10-17 dremio Operator 简单说明
2021-10-17 nomad-pack nomad的仓库特性
2021-10-17 zalando 最新关于微前端的一些实践文章

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示