인프런 커뮤니티 질문&답변

junh0328님의 프로필 이미지
junh0328

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

게시글 수정하기

백엔드 서버 라우팅(/:postId) 파라미터 관련 질문

해결된 질문

작성

·

400

0

안녕하세요 제로초님 DB 시퀄라이즈 관계에 있어서 헷갈리는 상황에 직면하여 질문 남깁니다!

기존에 제로초님이 액션을 dispatch 할 때는 data 객체에 담긴 변수들이

와 같은 형식으로 data.postId (소문자로 작성됨) saga에서 백엔드 서버로 넘겨줄 때도

이런 식으로 data 객체 안에 들어있는 postId로  post.id를 넘겨 주었던 상황입니다.

그래서 프론트에서 `${data.postId}` 로 보내진 postId를 백엔드 라우터에서 '/:postId'로 받는다고 생각하고 이해한 상태였습니다.

그런데 이번 강의에서 게시글 수정하기(UpdatePost)를 하실 때 디스패치 시에 data.PostId로 보내주시더라구요.( postId로 객체를 바꿔서 보내도록 수정하여도 코드가 문제 없는 것은 확인을 했습니다!)

그럼에도 백엔드 라우터에서는 /:postId로 받는 부분을 보고 제가 어떤 부분을 잘못 이해했나 싶어서 질문 드립니다. req.parmas에는 PostId가 들어있을 텐데 어떻게 요청을 ${data.PostId}로 보내도 업데이트 라우터를 처리할 때 '/:PostId' 가 아닌 '/:postId' 로 받아져도 코드가 정상 작동하는 지가 궁금합니다. 와일드카드 관련 부분인가 하고 찾아봐도 그쪽이 아닌 것 같아 질문 남깁니다 ㅠㅠ

답변 2

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

/:postId는 그냥 이름입니다. data.PostId와 아무 상관도 없습니다. /:PostId로 하든 /:zerocho로 하든 자리만 맞으면 데이터가 들어옵니다.

/hello/:id

가 있으면 /hello/1을 하면 req.params.id가 1이 되는 것이죠. 애초에 서버는 프론트에서 data.PostId로 보내는지 data.postId로 보내는지 관심도 없습니다. 실제 데이터가 뭘로 전달되느냐만 보는거고요.

0

junh0328님의 프로필 이미지
junh0328
질문자

아 그렇군요 ㅠㅠ . 으로 객체를 받아와 계속 넘겨준다고 생각하고 있었네요.. 감사합니다!

junh0328님의 프로필 이미지
junh0328

작성한 질문수

질문하기