본문 바로가기

[프로젝트] 냥냥곰펭

[BE] 0-2. 프로젝트 준비 (CORS / dotenv / JWT / Cookie-parser / ESLint / Prettier / MySQL / Sequelize / ES6 import 오류 / Git push 오류 / permissoin denied(PORT) 오류)

1. cors 설치

- CORS(Cross-Origin Resource Sharing) : 자신이 속하지 않은 다른 도메인, 다른 프로토콜, 혹은 다른 포트에 있는 리소스를 요청하는 cross-origin HTTP 요청 방식

npm install cors

(출처) https://surprisecomputer.tistory.com/32

 

2. dotenv 설치

- 환경 변수를 .env 파일에 저장하여 process.env로 로드하는 의존성 모듈

npm install dotenv

(출처) https://juniordev-team.tistory.com/27

 

3. jwt 설치

- 모바일이나 웹의 사용자 인증을 위해 사용하는 암호화된 토큰

npm install jsonwebtoken

(출처) https://kong-dev.tistory.com/150

 

4. cookie-parser 설치

- 쿠키를 사용하기 위해서

npm install cookie-parser

(출처) https://zzdd1558.tistory.com/177

 

5. ESLint, Prettier 설치

① VS Code Extension 설치하기

② npm 설치

③ Ctrl + , 을 통해 Workspace에 설정하기                          → 세 가지 모두 되어야 정상적으로 가능해짐

(출처1) https://gwpaeng.tistory.com/348 

(출처2) https://it-eldorado.tistory.com/175

 

6. MySQL Workbench 설치

- MySQL을 GUI 환경으로 사용가능하게 하는 프로그램

(출처1) https://dora-guide.com/mysql-install/ 

(출처2) https://dearmycode.tistory.com/15 

 

7. MySQL + Sequelize 연결

-  Sequelize : 자바스크립트의 객체와 데이터베이스를 연결해주는 도구

(출처1) https://velog.io/@brgndy/Node.js-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A6%88%EB%A1%9C-MySQL-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0 

(출처2) https://inpa.tistory.com/entry/EXPRESS-%F0%9F%93%9A-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A6%88-ORM

 

 

ES6 환경에서 import 할 때 from 뒤 파일 이름의 확장자(js)을 꼭 써줘야함

- 근데 만약 json 파일을 인식하지 못한다면 assert를 사용해야 한다.

(출처1) https://stackoverflow.com/questions/66512235/directory-import-is-not-supported-resolving-es-modules-when-trying-import-map

(출처2) https://www.inflearn.com/questions/802178/const-config-require-x27-config-config-x27-env-%EB%A5%BC-es%EB%AA%A8%EB%93%88%EB%A1%9C-%EB%B6%88%EB%9F%AC%EC%98%A4%EB%8A%94-%EB%B0%A9%EB%B2%95 

 

listen EACCES: permissoin denied (PORT); 오류

- env 파일에서 PORT=4000; << 뒤에 세미콜론 붙이면 안됨

(출처) https://www.inflearn.com/questions/802178/const-config-require-x27-config-config-x27-env-%EB%A5%BC-es%EB%AA%A8%EB%93%88%EB%A1%9C-%EB%B6%88%EB%9F%AC%EC%98%A4%EB%8A%94-%EB%B0%A9%EB%B2%95

 

 

git push 오류 (error: failed to push some refs to ~~~)

- 찾아보니 git pull을 먼저 하고 push하면 된다고 하는데 나는 이 방법도 먹히지 않았다...

- 그래서 더 찾아보니 git pull origin main --allow-unrelated-histories 을 하면 된다고 해서 했더니 성공했다!!!

git pull origin main --allow-unrelated-histories

(출처) https://iambeginnerdeveloper.tistory.com/26

 

- 이후 할 일 : MySQL 연동하기, MySQL 외부접속 허용 등

(MySQL 연동) https://velog.io/@brgndy/Node.js-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A6%88%EB%A1%9C-MySQL-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0

(MySQL 외부접속) https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=dd1587&logNo=221157052055

(ChatGPT DB1) https://happyguy81.tistory.com/180 

(ChatGPT DB2) https://docs.kanaries.net/ko/articles/chatgpt-database

(게시판 만들기) https://kong-dev.tistory.com/138

(게시판 DB 구성) https://laycoder.tistory.com/106