APIルートを使用すると、Next.jsアプリ内でAPIエンドポイントを作成できます。それを行うには、次の形式を持つpages/api
ディレクトリ内に関数を作成します。
// req = HTTP incoming message, res = HTTP server response
export default function handler(req, res) {
// ...
}
上記のリクエストハンドラーの詳細については、APIルートのドキュメントを参照してください。
これらは、サーバーレス関数(ラムダとも呼ばれます)としてデプロイできます。
試してみましょう。pages/api
にhello.js
というファイルを作成し、次のコードを記述します。
export default function handler(req, res) {
res.status(200).json({ text: 'Hello' });
}
https://:3000/api/helloでアクセスしてみてください。{"text":"Hello"}
と表示されるはずです。なお、
req
は、http.IncomingMessageのインスタンスに、いくつかのプリビルドされたミドルウェアが加わったものです。res
は、http.ServerResponseのインスタンスに、いくつかのヘルパー関数が加わったものです。以上です!このレッスンを終える前に、次のページでAPIルートを使用するためのいくつかのヒントについて説明しましょう。