dotEnv란?

일반적으로 포트 번호, secret code, database 주소, googleClientID 등 환경 변수를 json에 보관하여 사용한다.

하지만 이렇게 하면 모든 정보가 노출되기 마련이다.

이러한 환경 변수들을 [.env]라는 파일에 효율적으로 간단히 숨겨주는 기능을 담당한다.

 

설치방법

$ yarn add dotenv @types/dotenv --save

 

사용법

.env 파일 생성

$ touch .env

 

.env 파일에 환경변수 등록

PORT = "3000"
DATABASE = "mongodb://localhost:27017/databaseName"

 

소스코드 작성

// 환경변수 사용 준비 (메인코드 가장 윗줄에 적어준다.)
const envResult = require('dotenv').config()

if (envResult.error) {
	throw envResult.error;
}

// 변수 사용방법 (progress.env.${.env 추가된 변수이름})
console.log(progress.env.DATABASE);

 

* 주의사항

github에 노출되지 않도록 주의해야 한다.

git push 하기 전에 gitignore 파일에 .env 를 필히! 포함 시켜야 한다.

 

React.js .env 사용하기

별도의 설치는 없이 바로 설정 가능하다.

다만 환경변수 앞에 REACT_APP_ 으로 시작을 해야한다. 그 외의 설정은 모두 무시되므로 주의하도록 한다.

예시> REACT_APP_PORT, REACT_APP_GRAPHQL

 

React Native 에서 .env 사용하기

react-native-config를 이용할 수는 있지만 한동안 업데이트가 되지 않아서 최신 버젼의 React-Native에서는 동작하지 않는다.

별도의 모듈을 직접 만들거나 당분간 config.ts 소스파일을 만들어 기록하는 편이 낫다.

 

'Developments > Node.js' 카테고리의 다른 글

Express.js 에서 정적 파일 서비스 구축  (0) 2019.09.10
POST 데이터 추출  (0) 2019.08.30
Express.js 에서 session 관리  (0) 2019.08.27
Helmet.js 를 이용한 서버 보안성 향상  (0) 2019.08.27
Fetch 대신 Axios  (0) 2019.08.27

+ Recent posts