Routing: ルートハンドラ | Next.js

コンテンツ

Route Handlers allow you to create custom request handlers for a given route using the Web Request and Response APIs.

Route.js Special FileRoute.js Special File

重要な情報: ルートハンドラーはappディレクトリ内でのみ利用可能です。これらはpagesディレクトリ内のAPIルートの相当物であり、APIルートとルートハンドラーを一緒に使用する必要はありません。

Route Handlers are defined in a route.js|ts file inside the app directory:

export const dynamic = 'force-dynamic' // defaults to auto
export async function GET(request: Request) {}

ルートハンドラーは、page.jslayout.jsと同様に、appディレクトリの中にネストすることができます。ただし、page.jsと同じルートセグメントレベルにroute.jsファイルを配置することはできません

要約する
Route Handlersは、WebのRequestとResponse APIを使用して、特定のルート用のカスタムリクエストハンドラを作成することができます。Route Handlersは`app`ディレクトリ内でのみ利用可能で、API Routesと同等であり、API RoutesとRoute Handlersを一緒に使用する必要はありません。サポートされるHTTPメソッドには、GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONSがあります。Route HandlersはGETメソッドを使用するとデフォルトでキャッシュされますが、キャッシュを無効にする方法も提供されています。さらに、Route HandlersはNext.jsのNextRequestとNextResponse APIを拡張しており、高度なユースケースに便利なヘルパーを提供しています。