如何在Next.js的app文件夹中的API路由处理程序中获取URL动态参数/slug?

oipij1gg  于 2023-08-04  发布在  其他
关注(0)|答案(1)|浏览(115)

app目录下使用Next.js 13,我已经尝试了很多不同的方法,但我似乎无法获得足够的文档。
我尝试将此URL /api/stripe/${sessionId}提取到服务器端API路径,该路径看起来像api/stripe/[session]/route.j s,并检索sessionId以进行条带调用:

import Stripe from "stripe";

const stripe = new Stripe(process.env.STRIPE_SECRETE_KEY);

export async function GET(req) {
  const { sessionId } = NextRequest.nextUrl.searchParams;
  console.log(sessionId);

  const checkoutSession = await stripe.checkout.sessions.retrieve(sessionId);

  return NextResponse.json({ checkoutSession });
}

字符串

jobtbby3

jobtbby31#

你的Route Handler被传递了一个对象作为参数,它包含一个params键,该键将包含slug,如下所示:

// app/api/stripe/[session]/route.js

import { NextResponse } from "next/server";

export async function GET(request, { params }) {
  console.log(params.session);
  // ...
  return NextResponse.json({ messsage: "Hello World" }, { status: 200 });
}

字符串

相关问题