APIルートの作成
APIルートを使用すると、Next.jsアプリ内にAPIエンドポイントを作成できます。pages/api
ディレクトリ内に以下の形式の関数を作成することで実現できます:
// req = HTTP受信メッセージ、res = HTTPサーバーレスポンス
export default function handler(req, res) {
// ...
}
上記のリクエストハンドラについて詳しくは、APIルートのドキュメントをご覧ください。
これらはサーバーレス関数(Lambdaとも呼ばれます)としてデプロイ可能です。
シンプルなAPIエンドポイントの作成
実際に試してみましょう。pages/api
ディレクトリにhello.js
というファイルを作成し、以下のコードを記述します:
export default function handler(req, res) {
res.status(200).json({ text: 'Hello' });
}
http://localhost:3000/api/helloにアクセスしてみてください。{"text":"Hello"}
が表示されるはずです。以下の点に注意してください:
req
はhttp.IncomingMessageのインスタンスに加え、いくつかの組み込みミドルウェアが含まれています。res
はhttp.ServerResponseのインスタンスに加え、いくつかのヘルパー関数が含まれています。
これで完了です!このレッスンを終える前に、次のページでAPIルートを使用する際のいくつかのヒントについて説明します。