Wecode - Project 3 (부트캠프)/Project 3 독학

CRUD with token ; postman 통신

JBS 12 2023. 10. 16. 21:53

[postman]

Api 주소 createPost, createpost 상관없는지

-> url은 소문자가 법칙

 

 

[postman header에 token 담기]

 

Auth에 안 해도 되고

bearer 안해도 되고 

Tests 안 해도 되고 

environment - global 전역변수 안 해도 되고 

 

 

Headers에 토큰만 담으면 됨

- 앞에 bearer 안 붙여도 되고 

- 'token'이 아니라, 'authorization'으로 쓰면 됨 

 

[create post]

 

달라지는 점1  

token이 없을 때는, postman에서 user_id를 넣어줬는데,

토큰이 있으면, body에 user_id 필요 없음 

달라지는 점 2 

 

req.body에서 id를 받아올 필요도 없음 

 

다 필요 없진 않음. 

 

token 있어도 id 받아야 하는 이유

-> id 안 받는 건, req에서이고, 이건 DB에 데이터 저장하는 거니까

 

오류 : 

 

token 발급은 됐는데, verify가 안 됨 

 

userId 와 토큰에 있는 id는 같은 것
그래서 나는 id를 모두 userId로 바꾸었는데,
token을 찍어보니, id로 담겨져 있기에, 
undefined로 안 나오는 것이였다. 


jwt.verify를 찍어보면, id가 userId가 아니라 
id로 나온다는 점! 

 

 

 

const { id}  로 감싸는 이유 -> 객체에 담긴 id를 꺼내기 때문 

 

const userData = jwt.verify(token, process.env.TYPEORM_JWT);

const id = userData.id 를 합친 코드 

 

그래서 console.log ( {id} ) 가 아니라, console.log (id)

 

 

[readpost]

 

[delete post]

 

postman body와 쿼리문에 

userId 하니 안 됐다. 

 

아무래도 위에서부터 내려오는 

같은 userId를 토큰에 담긴 id에 일치해야 해서 

 

 

이메일 중복 확인 필요 없음. token 확인하면 굳이 ㅇㅇ 

토큰 있으면 필요 없음! 

     이 코드는 회원가입할 때,  

  • 토큰이 있는지 보고, 
  • 그 토큰이 이 사람이 맞는지 보고, 끝!

 

[update post] 

 

오류 

- 쿼리문에서도 id를 (userId 아님 ; token 에 담긴 id와 통일)

- token verify 할 때에도 id (userId 아님 ; token 에 담긴 id와 통일)