데이터베이스 설정 정보를 관리하기 위해 config 파일을 생성해서 내용들을 넣어뒀다. JWT 적용 중에 KEY 값 보관 할 파일을 추가로 만들어야 하나 싶었다. JWT 예제들을 보니 dotenv를 활용한 코드들이 보여 구글링해보니 환경 변수를 관리하는 라이브러리다.
/config/dbconfig.js에 정보를 저장해 두고 mysql 접속하는 dbconn.js에서 불러들이는 방식이었다.
config/dbconfig.js
const config = {
host: 'localhost',
user: 'user',
password: 'password',
database: 'db',
};
module.exports = config;
common/dbconn.js
const config = require('../config/dbconfig');
const mysql = require('mysql');
const db = mysql.createConnection({
host: config.host,
user: config.user,
password: config.password,
database: config.database,
});
module.exports = db;
dotenv 사용해 .env 파일에 환경 변수를 사용하는 방법으로 변경했다. dbconfig.js는 삭제했으며 .env 파일은 .gitignore 파일에 추가해 git에 추가되지 않도록 했다. 민감한 정보의 파일은 .gitignore에 추가해 공개 장소에 올라가지 않도록 한다.
설치
yarn add dotenv
.env
# DB
DB_Host = localhost
DB_User = user
DB_Password = password
DB_Database = db
# jsonwebtoken
JWT_KEY = 1234567890
common/dbconn.js
require('dotenv').config();
const mysql = require('mysql');
const db = mysql.createConnection({
host: process.env.DB_Host,
user: process.env.DB_User,
password: process.env.DB_Password,
database: process.env.DB_Database,
});
module.exports = db;
.env 파일을 프로젝트 폴더 최상단에 두었다면 본문처럼 require('dotenv').config(); 형식으로 불러들이고, process.env.변수이름으로 사용하면 된다.
'개발 > JS' 카테고리의 다른 글
논리 연산자(&&, ||), 삼항연산자를 사용한 단축 평가 (0) | 2022.01.11 |
---|---|
JWT 토큰 쿠키에 저장/삭제 (0) | 2022.01.04 |
[JS] 무작위로 배열 속 내용 추출하기 (0) | 2021.05.21 |
nodejs 재시작 없이 변경 내용 적용하기, supervisor 패키지 (0) | 2021.04.12 |
리액트 앱 만들어주는 앱 (0) | 2020.10.15 |
위치 정보 받아 날씨 제공 (0) | 2020.04.01 |