Next.js
Next.js API

Next.js API

Di dalam Next.js kamu bisa membuat API sendiri, untuk membuat API sendiri kamu bisa membuat direktori baru dengan nama api di dalam direktori app kemudian buat file dengan nama route.js dan di dalam file route.js kamu bisa menulis kode seperti di bawah ini:

app
└── api
    └── route.js
route.js
export async function GET() {
  return Response.json({ message: "Hey There!" });
}
 
export async function POST() {
  return Response.json({ message: "Hey There!" });
}
 
export async function PUT() {
  return Response.json({ message: "Hey There!" });
}
 
export async function PATCH() {
  return Response.json({ message: "Hey There!" });
}
 
export async function DELETE() {
  return Response.json({ message: "Hey There!" });
}

Headers

Untuk melakukan handling headers kamu bisa menggunakan request seperti di bawah ini:

route.js
import { headers } from "next/headers";
 
export async function GET(request: Request) {
  const headersList = headers();
  const referer = headersList.get("referer");
 
  return Response.json({ message: "Hey There!" });
}

Cookies

Untuk melakukan handling cookies kamu bisa menggunakan cookies seperti di bawah ini:

route.js
import { cookies } from "next/headers";
 
export async function GET(request: Request) {
  const cookieStore = cookies();
  const token = cookieStore.get("token");
 
  return Response.json({ message: "Hey There!" });
}

Body

Untuk melakukan handling body kamu bisa menggunakan body seperti di bawah ini:

json

route.js
export async function POST(request) {
  const res = await request.json();
  return Response.json({ res });
}

formData

route.js
export async function POST(request) {
  const formData = await request.formData();
  const name = formData.get("name");
  const email = formData.get("email");
  return Response.json({ name, email });
}