Masaru Furuya's Blog

Next.jsのApp RouterでのAPI Routes調査メモ

Next.jsのApp RouterでのAPI Routes調査メモ

AppRouterはいつからStableになったか

AppRouterはNext.jsのv13.4のstableバージョンになりました。

https://nextjs.org/blog/next-13-4#nextjs-app-router

App RouterでのAPI Routes

AppRouterではAPI実装の方法がPage Routerからは少し変更されています。

Page Router時代はpages/api以下のファイルはAPIとして参照できるようになっていました。

https://nextjs.org/docs/pages/building-your-application/routing/api-routes

公式ドキュメントでのAPI RoutesとはPage RouterのAPI Routesを指しているので、注意が必要です。

Route Handlers

Route HandlersはPage RouterのAPI Routesに相当する機能です。

公式にも書かれている通り、App Routerを使う場合にapiを実装したい場合はRoute Handlersを使います。

appディレクトリはデフォルトで作成されますが、apiディレクトリは自身でapp以下に作る必要があります。

API Routesとの違いとしては、ディレクトリ単位でAPIが作成されるということです。

app/api/users/route.jsの場合は、api/usersというパスが作成できます。

所感

API RoutesがPage Routerの概念だったというのは知らなかったです。App Routerを使う場合はRoute Handlersであることを意識して実装していきたいと思います。

ただサーバーサイドコンポーネントを使う場合、APIは不要なのでは?という気がするので次はその辺りを調べていきます。

記事を書いている人

Masaru Furuya
Masaru Furuya

Engineering Manager。React/Next.js/TypeScript/Firebase/Rails/NestJS 個人開発したサービスをいくつか運営しています。

>> ポートフォリオ

記事を書いている人

Masaru Furuya
Masaru Furuya

Engineering Manager。React/Next.js/TypeScript/Firebase/Rails/NestJS 個人開発したサービスをいくつか運営しています。

>> ポートフォリオ