Next.js 路由处理器(Route Handlers)是 Next.js 13 引入的一项新特性,用于处理 HTTP 请求并生成响应。它允许你在 app
目录下定义自定义的路由逻辑,类似于传统的 API Routes,但具有更高的灵活性和与页面组件的更好集成。
getStaticProps
、getServerSideProps
或 useEffect
来获取数据。pages/api
目录下定义的,主要用于创建后端 API 端点。app
目录下定义的,提供了更灵活的请求处理方式,并且与页面组件的集成更加紧密。app
目录下直接定义请求处理逻辑,减少了代码的冗余和复杂性。以下是一个简单的路由处理器示例,处理 GET 请求并返回 JSON 数据:
// app/api/hello/route.js
export async function GET(request) {
return new Response(JSON.stringify({ message: 'Hello, World!' }), {
headers: { 'Content-Type': 'application/json' },
});
}
在这个示例中,路由处理器定义了一个 GET 请求的处理逻辑,并返回一个包含 message
字段的 JSON 响应。
Next.js 路由处理器提供了一种更现代、更灵活的方式来处理 HTTP 请求,并与页面组件紧密集成。它简化了代码结构,提高了开发效率,是 Next.js 13 中一个非常有用的特性。