Wecode - Project 1 (부트캠프)/Project 1 과정

Project 1- 5일 차: chat gpt AI와 상생하기 2탄

JBS 12 2023. 9. 15. 21:17

통신 전, 코드 리뷰를 할 때에 활용해 보았다.

 

2탄.

아는 게 많아지니, 더 잘 활용하고 잘 물어보고 

내가 원하는 정보를 얻을 수 있었다. 

정말 상생이 가능한. 


멘토님께 merge 후 수정하기 위해 branch 새로 생성해서 

거기에 pull 받아서 수정 후 

push하라고 했는데

실제 해보려고 하니 

구체적으로 알고 싶어서 

그런데 나의 상황은, 이미 내가 로컬에 수정한 뒤이기에 

나의 상황을 알려주었다. 

 

그렇다면 이렇게 하면 된단 말이지? 하고 

 

branch main으로 checkout 하려는데 에러가 떠서 

commit을 해야 한다고 하니, 

그럼 기왕 commit 할 거면 수정을 다 하고 해야 하니, 

내친 김에 내가 수정해야 할 사항 jwt token sigature 까지 물어봄 


 jwt token의 signature 와 portnumber는

깃허브 공용공간에 올라가기에 

깃허브에 안 올라가는 .env에 값을 넣고

app.js와 .env.sample에는 변수처리 

자꾸 나오는 process 에 대해 물어봄. 어디에서 나온 건지.


하긴 했는데, 내 코드가 맞는지 리뷰 받고 싶어서 

이렇게 물어봄

나는 8000으로 했는데 그와 상관없이 3000을 써야 하는건지

아니면 default 값으로 3000을 만국 공용으로 쓰는 것인지 알아보기 위해서.

그리고 다시 돌아와서, 

코드 리뷰는 다 해결 된 거 같아서, 

merge 하다가 막힌 부분 물어보기


1. portNumber를 정의하기 전에 require("dotenv").config()를 호출해야 

환경 변수를 로드한 후에 포트 번호를 설정해야 

chatgpt openAI의 도움을 받은 것

1-2. portNumber와 같은 환경 변수를 .env 파일에 저장하고 Node.js에서 사용

1 )require('dotenv').config()를 사용하여 .env 파일을 로드

2) .env 파일에 PORT 환경 변수를 추가

PORT=3000

 PORT 변수에 3000이라는 값을 할당한 것

3) Node.js 애플리케이션의 코드(app.js)에서 .env 파일을 로드하고 PORT 환경 변수를 읽는다.

 

// dotenv 패키지를 로드하여 .env 파일을 읽습니다.
require('dotenv').config();

// PORT 환경 변수를 읽습니다.
const portNumber = process.env.PORT || 3000;

// 서버를 시작할 때 포트 번호로 사용합니다.
app.listen(portNumber, () => { console.log(`Server is listening on port ${portNumber}`); });

 


2. 

server.listen 함수를 호출하기 전에 start() 함수를 실행해야 하기에

server.listen앞에 await를 붙여주고, 

--> await server.listen()를 사용하여 서버가 시작될 때까지 기다리도록 수정

 

그 함수안에 

콜백함수를 빼고, 괄호 닫아줬다. 

 

3.


위에서는 내가 궁금한 부분만 했는데,

위에서 변수 연결 되는 부분도 있고 하니

코드 리뷰를 다시 쫙 긁어서 통째로 해보기로 했다. 


 

어떻게 물어보느냐가 관건이였다

userService.js 에 빠진 코드와

그와 연결된 .env , .env.sample에 들어가야하는데 빠진 코드를 알고 싶었다. 

 

그래서 UserService.js를 긁어서 빠진 걸 찾아달라고 했고, 

 .env , .env.sample에 들어가야하는게 뭔지 물어봤다.

 

 

DB_USERNAME=myusername
DB_PASSWORD=mypassword
DB_DATABASE=mydatabase
TYPEORM_JWT=mysecretkey

 

 

내가 .env.sample 에서는 내 실제 패스워드와 실제 유저 네임과 데이터베이스 이름을 쓰는 것을 알고 난 뒤 

chat gpt를 사용하니까, 

저 'myusername, mypassword, mydatabase'가 저대로 따라 쓰라는게 아니라, 

내꺼를 넣으라는 것과, 

그렇다면 mysecretkey도 내가 만든 signature 를 쓰라는 것을 알게 되었다.


그런 다음에, dbmate up 해야하는거지? 라고 찔끔 물어보기

네 라며 다시 처음부터 모든 흐름 프로세스를 알려준다 ㅎ

이 사람 이해 못했구만 다시 처음부터 설명해야지 라는 선생님의 마인드구만

 

덕분에 성공 

 

 


branch 로 또 문제를 겪어서