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

이종민님의 프로필 이미지
이종민

작성한 질문수

Next + React Query로 SNS 서비스 만들기

클라이언트 컴포넌트에서 Server Actions 사용하기

Server Action에 대한 질문과 클라이언트 컴포넌트에서 ServerAction을 활용할 때의 장점이 궁금합니다.

작성

·

1.1K

0

선생님의 설명 덕분에 클라이언트 컴포넌트에서도 Server Action을 활용하는 방법을 알게 되었습니다. 하지만 몇가지 의문이 있는 상태입니다. ㅜㅜ

  1. Server Action이라는 것이 클라이언트 컴포넌트에서 직접 DB에 접근하거나 별도의 브라우저에서 요청하지 않더라도 서버에 요청을 보내서 Prerendering 하는 방식이 맞을까요?
    그러면 보안 상의 장점도 가질 수 있고, 속도에도 개선이 생기는게 맞을까요?

  2. 클라이언트 컴포넌트에서 Server Action을 사용하게 된다면 기존의 Server Action의 장점이 없어지는 것 같은데 사용하는 이유가 단순히 강의에서의 설명을 위함이신지 아니면 별도의 장점이 있으셔서 강의에 넣으실 계획을 하신 건지 궁금해서 질문남깁니다!

답변 2

2

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

  1. 꼭 서버액션을 쓰는 주체가 클라이언트 컴포넌트일 필요는 없고, 서버액션은 브라우저에서 서버로 요청하는 것이 맞습니다. 기존에 브라우저->(프론트서버->)백엔드서버->디비 로 가던 구조를 브라우저->프론트서버->디비로 가는 것입니다. 속도는 개선이 됩니다만 보안상 장점은 잘 모르겠네요.

  2. 서버컴포넌트에서 액션을 쓰나 클라이언트컴포넌트에서 액션을 쓰나 둘다 브라우저-> 프론트서버로 요청을 보내는 것입니다. 똑같습니다. 두 컴포넌트에서 모두 쓸 수 있다는 걸 보여드린 겁니다.

이종민님의 프로필 이미지
이종민
질문자

감사합니다~!
브라우저 -> 백엔드서버 -> 디비 보다 브라우저 -> 프론트 서버 -> 디비가 더 빠른 이유가 물리적인 이유 때문일까요??

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

브라우저->프론트서버->백엔드서버->디비 보다 빠른 것이지 브라우저->백엔드서버->디비보다 빠르다고는 할 수 없습니다.

0

안녕하세요, 인프런 AI 인턴입니다.

Server Action에 대한 이해와 클라이언트 컴포넌트에서 Server Action을 사용할 때의 장점에 대해 궁금해하시는군요! 질문하신 내용과 관련하여 조현영 강사님께서 다른 수강생분의 질문에 답변해주신 내용이 도움이 될 것 같습니다. 아래 링크를 참고해보시기 바랍니다.

조현영 강사님은 Server Action은 그저 HTML form을 통째로 서버로 보내는 방식이라고 설명하시며, react가 없던 때의 폼 전송 방식과 유사하다고 말씀하셨어요. 또한, Server Action 자체가 크게 유용한 기능이 아닐 수 있어 예전 방식대로 처리하는 것을 추천하시기도 하셨습니다.

보안과 속도 개선에 대한 질문도 있으셨는데, 자세한 내용은 강의 내용을 참조하시는 것이 좋을 것 같습니다. 링크를 통해 강의 내용을 직접 확인하시면 더욱 명확한 답변을 얻으실 수 있습니다.

감사합니다.

이종민님의 프로필 이미지
이종민

작성한 질문수

질문하기