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

신영 유님의 프로필 이미지

작성한 질문수

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

S3 연결하기

post, put, delete 할때 data 보내는 이유?

작성

·

344

·

수정됨

0

안녕하세요 제로초님.

post, put, delete 할때 백엔드에서 response에 data를 담아 돌려보내는 보내는 이유가 궁금합니다.

프론트에서 post, put, delete 요청을 보내면, 백엔드에서는 db에 업데이트만 하고, 아무것도 안 돌려주고 나서,

프론트에서는 response 200 온거 확인한 후에, 프론트 안에서 data를 변경해도 되지 않나요??

새로고침 할때는 mounted 할때 일괄적으로 list 보내면 되지 않나요?

답변 3

0

신영 유님의 프로필 이미지
신영 유
질문자

아하 그게 핵심이네요 감사합니다

0

신영 유님의 프로필 이미지
신영 유
질문자

  1. 노드버드 프로젝트에서는 프론트에서 업데이트를 일단 한 게 아니고,

db 변경 후에 서버에서 받은 response를 프론트에 업데이트 시키는 거 아닌가요??

그래서 프론트에서 비동기 처리 후에 success 또는 failure로 넘어가는 것 아닌가요?

 

  1. 아하 서비스에 맞게 자유롭게 하면 되는 거군요 감사합니다!

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

아, 노드버드 강좌군요. 비관적이 맞습니다.

0

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

프론트에서 데이터를 변경해도 되는데 서버로부터 오는 데이터가 더 정확하기 때문입니다. 예를 들어 동시에 두 사람이 하나의 게시글을 수정한 경우에 서버로부터 온 데이터에는 그게 반영되어있을 수 있습니다.

신영 유님의 프로필 이미지
신영 유
질문자

  1. 그러면 제로초님 방식은 비관적 업데이트 인가요?

  2. post, put, delete 할때 서버가 데이터를 response에 담아서 보내주는 것이 모범사례 인가요?

     

    프로젝트 만들 때마다 이런 통신 관련해서 고민하게 되네요..

    이런 부분은 어디에서 찾아 공부하면 좋은지도 알려주시면 감사하겠습니다. 아니면 직접 실무가서 경험해 봐야 되는 것 일까요?

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

아뇨. 긍정적 업데이트입니다. 일단 업데이트 후에 서버에서 받은 걸로 재수정하는 것이니까요.

모범사례는 아니고 프로젝트마다 정하면 되는 겁니다. 모범사례라는 건 프로그래밍 세계에 거의 없습니다. 회사마다 서비스마다 사정이 달라서요.

신영 유님의 프로필 이미지
신영 유
질문자

그러면 이 예시에서 설명하신 부분도 비관적이 맞나요?? db에서 업데이트 된 정보가 더 정확하다는 점을 이용한 경우라서요?

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

긍적적이든 비관적이든 서버로부터 온 데이터가 더 정확하다는 사실에는 변함이 없습니다.