阅界食谱今天吃什么,先来这里看看
代码片段

环境变量与配置管理

配置和代码分离,密钥不进仓库。

模板正文

# .env(本地用,必须写进 .gitignore)
DATABASE_URL=postgres://user:pass@127.0.0.1:5432/app
API_KEY=sk-xxxx
LOG_LEVEL=debug

# .env.example(提交到仓库,给别人做参考,值留空)
DATABASE_URL=
API_KEY=
LOG_LEVEL=info

# 读取(Python)
import os
from dotenv import load_dotenv
load_dotenv()
db_url = os.environ["DATABASE_URL"]        # 缺失就报错,别给默认值

# 读取(Node)
const apiKey = process.env.API_KEY;
if (!apiKey) throw new Error("缺少 API_KEY");

怎么用

任何需要密钥或环境差异的项目都照这个做。

使用要点

  • 密钥绝对不能进 Git;一旦提交过,改密钥比删提交更省事。
  • 必需配置缺失时直接报错退出,静默用默认值会埋下隐患。

同类模板

环境变量与配置管理 · 阅界食谱