inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

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

서버 액션과 api route의 차이가 어떤게 있을까요?

201

amh6281

작성한 질문수 4

0

안녕하세요! 강의 도중 궁금한게 생겨 여쭤보기 위해 질문 드립니다!

다름이아니라, 서버 액션과 api route의 차이가 속도 말고 어떤 때에 서버 액션을 써야하고, api route를 사용해야하는지 여쭤보고싶습니다!

찾아본 바로는 서버 액션은 POST, PATCH 등 폼 제출 시에 사용하는 것이라는데, 폼 제출 시에는 무조건 서버액션을 사용하는 것이 맞는지, 아니라면 단지 개발자 판단 하에 사용하면 되는 것인지 여쭤보고싶습니다!

react next.js react-query next-auth msw

답변 2

0

제로초(조현영)

서버 액션은 폼 제출 시 사용하시면 되고, api routes(routes handlers)는 백엔드 api를 만드는 기능입니다. 백엔드를 대체할 수 있습니다.

 

둘다 프론트개발자가 백엔드 기능을 직접 만들 때 씁니다

0

amh6281

답변 감사합니다!!

0

인프런 AI 인턴

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

amh6281님께서 질문하신 “서버 액션과 API Route의 차이”에 대해 설명을 드리겠습니다. 보다 깊이 이해하기 위해 다음 답변들을 참고하면 좋습니다:

  1. server action과 useState에 관해 질문드립니다!: 여기서는 서버 액션이 HTML 폼 데이터를 서버로 직접 보내는 방식으로 사용되는 것을 설명합니다. 이는 react가 등장하기 전의 폼 전송 방식과 유사합니다. 이 답변에서는 서버 액션이 매우 유용하지 않을 수 있어 다른 방식으로 처리할 것을 권장하고 있습니다.

  2. MSW오류 및 서버 액션에 대한 질문입니다!: 이 게시물에서는 서버 액션을 사용하면서 발생할 수 있는 문제점과 코드의 구체적인 예시를 통해 이를 이해하는 것을 도와줍니다. 강사가 설명하는 서버 액션의 장단점과 이에 대한 실질적인 사용 사례를 제공합니다.

서버 액션과 API Route의 차이를 간단히 요약해 드리면, 서버 액션은 주로 폼 데이터 전송과 관련된 작업에 사용되며, 전통적으로 HTML에서 지원하는 방식과 유사합니다. 반면, API Route는 서버 쪽에서 특정 작업을 수행하기 위해 엔드포인트를 설정하여 클라이언트와의 통신을 하는 보다 일반적인 방법입니다.

서버 액션을 사용할지 API Route를 사용할지 결정하는 기준은 다음과 같습니다:

  • 목적과 필요에 따라 결정: 서버 액션은 주로 간단한 폼 데이터 전송에 적합하며, 서버의 부담을 줄이고 클라이언트와의 직관적인 통신을 필요로 하지 않는 경우에 쓰입니다. 반면, API Route는 복잡한 데이터 처리나 여러 클라이언트 요청을 처리해야 하는 경우 유용합니다.

  • 기술 및 아키텍처 고려: 만약 프로젝트에서 Next.js를 사용 중이라면 이러한 기능들이 서로 보완적으로 활용될 수 있습니다. 구현의 편리함이나 프로젝트의 구조적 요건에 따라 적절한 방식을 고릅니다.

  • 보안과 성능: 각 방식의 보안이나 성능상의 장단점을 판단하여 상황에 맞는 선택을 하는 것이 중요합니다.

질문자님의 상황에 맞는 방법을 잘 선택하시길 바라며, 추가적으로 궁금한 점이 있으시면 계속해서 질문해 주시면 곧 지식공유자께서 답변을 주실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

캡처링부분 질문있습니다.

0

76

2

깃에 소스코드를 찾을 수 없습니다.

0

113

2

useInfiniteQuery promise와 react use 사용시 페이지 무한 로딩

0

98

1

import 파일 경로를 찾지 못 해서 에러가 발생합니다.

0

111

2

css 라이브러리 추천 부탁드립니다

0

141

2

팔로우 추천 목록이 빈 배열로 들어옵니다.

0

133

1

게시물 업로드 시 userId가 undefined로 들어가는 오류

0

119

1

useSuspenseQuery 사용 시 SSR 401 이슈 관련

0

172

1

리액트 쿼리 useinfinitequery 무한스크롤 구현 시 페이지가 이동할 경우 데이터가 보존되게 할 수 있나요??

0

184

3

폴링이 필요없는 이유

0

93

2

next Request Memoization과 react cache

0

110

2

seo 최적화 기준은 데이터 fetching인가요 아님 데이터 렌더링인가요?

0

84

2

next.js 서버fetch 에러 fallback ui 구현 방법

0

173

2

프레임워크 여론 파악법

0

125

2

필터옵션이 많은 페이지에서 서버 fetch를 하는게 맞는걸까요??

0

103

2

서버 fetch suspense 로 감싸고 새로고침 시 잠시 빈 화면이 노출된 후 fallback ui가 노출됩니다.

0

102

2

template.tsx 내 서버fetch 응답값과 클라이언트 컴포넌트 상태값 싱크가 맞지 않는 이슈

0

66

2

Auth.js 사용 시 authorize 함수가 호출되지 않습니다

0

132

2

next.js 에서 로그인에 관하여

0

139

1

Next의 route handler에 대한 질문이 있습니다.

0

101

2

게시판 리스트 만들때 use client를 어디서부터 집어넣어야할지 모르겠습니다

0

98

2

프라이빗 폴더를 해야 하는 이유가 모호한 것 같아요.

0

85

2

vanilla-extract 못찾는 문제

0

230

2

fetch 캐싱과 revalidate 관련

0

85

2