Recent Posts
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
관리 메뉴

개발자 박가나

[241211 TIL] 본캠프 51일차 (Route Handler와 Server Action) 본문

내일배움캠프

[241211 TIL] 본캠프 51일차 (Route Handler와 Server Action)

gnchoco97 2024. 12. 11. 21:12

Route Handler

웹 어플리케이션에서 특정 경로로 들어오는 요청을 처리하고 적절한 응답을 반환해주는 역할을 한다.

/* src/app/api/test/route.ts */

export async function GET(request: Request) {
  console.log("GET /api/test");
}

export async function POST(request: Request) {
  console.log("POST /api/test");
}

export async function PUT(request: Request) {
  console.log("PUT /api/test");
}

export async function DELETE(request: Request) {
  console.log("DELETE /api/test");
}

export async function PATCH(request: Request) {
  console.log("PATCH /api/test");
}

 

 

Server Action

서버에서 실행되는 비동기 함수로, 클라이언트 요청을 처리하거나 데이터베이스와의 상호작용을 하는 역할을 한다.

"use server";
import { Product } from "@/type/product";
import { BASE_URL } from "@/constants/api";

export async function getProducts() {
  const res = await fetch(`${BASE_URL}/products`, {
    cache: "no-store",
  });
  
  const data: Product[] = await res.json();

  return data;
}