티스토리 뷰

 

API Key란 인증된 사용자임을 나타낸 두 쌍의 문자열

API Key는 공개되서는 안되는데 어쩌면 네트워크를 통해 공개 되버릴 수가 있다. <= 방지하겠어!

 

API Key PC에 저정하자 단! 변수에 할당해서 하자

 

 

 

 

 

환경변수 ??

 

환경변수 : 

Linux 기반의 운영체제의 PC에는 시스템 자체에 전역변수를 설정할 수 있습니다.

그리고 시스템에 설정한 전역변수를 환경변수라고 합니다.

export 를 이용해 환경변수를 설정할 수 있습니다.

 

뭐라는거야...

 

이해하기 쉽게 풀어보자!!

 

 

 

'환경' : 소프트웨어가 동작하는 공간. 일단은  환경을 소프트웨어가 깔린 컴퓨터라고 생각하자.

환경'변수' : 그 컴퓨터마다 지정된 값

 

[환경이라는 방]안에 칠판이있고 거기에 변수들이 적혀있는거

 

철수네 영희네 칠판에 변수들이 적혀있다.

변수가있고 

값이 있다. 

 

다양한 용도가있지만 크게 3가지 용도가있다.

 

1. `영어사전을 ${서재}에 꽂으세요` <= 코드로 짜보셈 

이 명령어로 올바른곳에 서재를 꽂을수있다.

2. 집의 ${건물종류}가 전원주태이면 잔디를 깎으세요.

각 환경의 조건마다 어떤 동작을 실행할지 또는 어떻게 실행할지를 정할수있다. 

 => 얘를 들면 개발용 배포용으로 두개를 만든다고 가정해보자. 쉽게보려고 막 코드에 설명을 써놧다.

배포된거에도 뜨면 잣되는거다. => 배포할때마다 다 찾아서지우기는? 시간이 너무많이걸린다.

 

그래서 각각에 환경변수를 넣어준다. <= 그에따라 조건 걸어주면 어디에는 뜨고? 어디에는 안뜨고? 이게 가능해짐! (if어쩌구!~)

3. `집에 도착하면 ${현관비밀번호}를 입력하고 들어가세요`  <= 이거아니면 비번적고 들어가야되는데 비밀번호가노출됨. 헐!

오픈소스로 남들에게 공개되는 코드들에는 이런 보안 요소들이 직접 들어가면 안되는거다.

 

위에서 말했던 이말(API Key는 공개되서는 안되는데 어쩌면 네트워크를 통해 공개 되버릴 수가 있다. <= 방지하겠어! )이  이해가 간다 이제!

 

위에서 설명한것 == 아래의 내용

 

실제 제품(서비스)을 개발하는 과정에는 개발 환경(local 또는 development 등)과 테스트 서버의 환경(test), 그리고 실제 제품을 제공하는 환경(production)이 있습니다. 예를 들어 구글 API를 이용해 웹 애플리케이션을 만드는 경우, 개발 환경에서는 개발자 개인의 API 키를 이용할 수 있습니다. 그러나 제품을 서비스할 때에 개인 API 키를 사용하면, 일일 요청량을 초과하는 경우 제품이 정상적인 동작을 할 수 없습니다. 이런 경우를 방지하기 위해 실제 제품에서는 기업용 API 키를 사용합니다. 이처럼 개발 환경과 제품을 제공하는 환경에서 사용하는 API 키가 다른 경우, 환경변수를 이용해 환경을 구분하여 코드를 작성할 수 있습니다.

데이터베이스도 마찬가지로 개발, 테스트, 제품 환경으로 구분할 수 있습니다. 다음 그림은 각기 다른 환경에, 같은 변수 이름을 사용하여 데이터베이스를 구분한 예시입니다.

 

 

[ 그림 ] 하나의 변수 이름을 환경에 따라 다르게 설정할 수 있습니다.

 

💡 환경이란 꼭 그컴퓨터 전체뿐이 아니라 도커의 컨테이너등 프로세스가 돌아가는 세분화된 공간을 말할수도있다. <= 아마 나중에가서 배울듯..지금은 그렇구나 하고 넘어가자!

 

환경변수에 대해서 배웠으니 사용법으로 넘어가자

 

 

 

 

 

환경변수 사용법 

 

 

 

 

export: 환경변수 확인하기 && 환경변수 임시 적용

 

1. 터미널에 export라고 쳐보기

 

 

2. 환경변수 만들어보기

 

export 변수 = ""

 

요런 모양으로 만들어주면된다.

 

 

3. 찍히는지 확인해보기

 

$<= 가끔 터미널에 나오는데 이게뭔가했더니 달라사인이 변수를 나타낸다고한다.

<환경변수>

부를때 명령어는 echo $

만들때 명령어는 export

존귀탱..휴..

 

 

dotenv: 자바스크립트에서 환경변수 사용하기 (닷 이엔브이~ 라고읽어요)

 

mkdir environment_variable
cd environment_variable
npm init # 엔터 키를 여러번 입력해 init을 마칩니다.
npm i dotenv # dotenv 모듈을 설치합니다.

 

 

 

아까만든 mypet변수가 없다. 이유를 찾아보니..

 

"명령어 export 로 적용한 환경변수는 현재 사용 중인 터미널에서만 임시로 사용이 가능합니다."

 

 

.env: Node.js에서 환경변수 영구 적용

 

1. nano로 env파일 생성

2. 변수쓰고 저장

3. cat해보면 내용이 저장되어있음

 

 

 

index.js에 모듈dotenv사용해서 저장해보자

 

 

졸구탱 봄바앤꼬몽이 또 튀어나왔다.

 

 

 

오늘 틀린문제! 모듈을 꼭 설치해주셈!!

 

 

 

 

 

 

오늘 공부하기 :

https://www.youtube.com/watch?v=0_rzg33BSS4&t=62s 

 

https://www.youtube.com/watch?v=GYmuQJiPeM4

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/07   »
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
글 보관함