如何在 ExpressJs 中使用环境变量 (env)
Soln:在使用环境变量之前先定义它们
你好!
如果你之前使用 Vue 或 React 进行过前端开发,你肯定知道环境变量 (.env) 是在后台初始化的,也就是说,你不需要 require 和 use dotenv
。但是,当你使用 Expressjs 等后端开发时,你必须像这样初始化它:
require('dotenv').config({path: './.env'});
问题:未找到环境变量
一位朋友正在使用 Expressjs 构建 API。他需要连接到 Stripe 进行支付。Stripe 的响应是Authorization headers are missing
。尽管他已经在环境变量 (.env) 中定义了 Stripe 密钥,并在初始化“stripe”npm 包时使用了它,但他不明白为什么会出现这种情况。
服务器.js
..
const stripeRoute = require("./routes/stripe")
..
require('dotenv').config({path: './.env'});
..
路线/stripe.js
const stripe = require("stripe")(process.env.STRIPE_KEY);
.env
STRIPE_KEY=key_goes_here
Soln:在使用环境变量之前先定义它们
错误是由于在需要之前定义了 Stripe 路由造成的.env
。以下方法解决了他的问题:
require('dotenv').config({path: './.env'});
const stripeRoute = require("./routes/stripe")
我个人喜欢在服务器文件的开头定义我的环境变量。
鏂囩珷鏉ユ簮锛�https://dev.to/geraldmuvengei06/how-use-environment-variables-env-in-expressjs-3bpc