Nee*_*lia 20
在 NextJS 13 中,在app/api/route.js中,您可以使用 URL 类来读取参数
export async function GET(req){
const {searchParams} = new URL(req.url);
const param = searchParams.get("/*Your param key here*/");
console.log(param)
}
Run Code Online (Sandbox Code Playgroud)
获取请求体
export async function POST(req){
const body = await req.json()
console.log(body)
}
Run Code Online (Sandbox Code Playgroud)
Joe*_*ddy 17
对于像我一样想要获取动态路由参数的人来说,它位于第二个参数中。
/api/something/[id]/route.ts
export async function GET(req, { params }) {
const id = params.id;
}
Run Code Online (Sandbox Code Playgroud)
小智 7
我认为现在最好的方法就是简单地使用
req.nextUrl.searchParams
Run Code Online (Sandbox Code Playgroud)
export const GET = async (req) => {
// Req Body
const requestBody = await request.json();
// Search Params
const searchParams = req.nextUrl.searchParams;
const foo = searchParams.get('foo');
}
Run Code Online (Sandbox Code Playgroud)
如果你检查一下NextURLtype def,就会发现里面有很多好东西。
在 NextJS 13 中,通过dirroute.ts中的文件约定app,我们可以使用以下命令读取查询参数和请求正文:
import url from "URL";
export async function POST(request: Request) {
const requestBody = await request.json(); // To read request data
const queryParams = url.parse(request.url, true).query; // To read query params
// Returning the query params & body
return NextResponse.json({
requestBody,
queryParams,
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18132 次 |
| 最近记录: |