我有一个关于 Next 13.4 的问题。从今天起我只能使用 Next 13.4。我想知道 api 文件夹去了哪里。此版本中不再创建它。它在 13.3 中仍然有效。我现在如何发出 POST 或 GET 请求并通过 NextResponse 返回结果?
小智 20
如果没有 /api 文件夹,您可以在 /app 文件夹中创建一个。
在Next 13.4中,api端点被视为route.js,就像page.js一样。
例如/app/api/home/route.js
import { NextResponse } from 'next/server';
export async function GET() {
return NextResponse.json({ name: 'Anuj Singh' });
}
Run Code Online (Sandbox Code Playgroud)
因此,如果您从浏览器导航到 /api/home 您将看到结果。\
来自官方文档的更多信息:https ://nextjs.org/docs/app/building-your-application/routing/router-handlers
您仍然可以将 API 路由与pages/api目录一起使用,它们将继续工作而无需任何更改。例如,如果您有一个正在进行的项目,则不必立即迁移它,您仍然可以在一段时间内坚持使用旧方法。如果您使用的某种 CLI 不会创建此文件夹,您可以自己手动创建。
不过,Next.js v13.4 有一个新功能,称为Route Handlers。它仅在app目录内可用。它相当于 API 路由,这意味着您不需要同时使用 API 路由和路由处理程序。如果您正在开始一个新项目,您可能希望立即开始使用路由处理程序。
| 归档时间: |
|
| 查看次数: |
21150 次 |
| 最近记录: |