Next.js-APIミドルウェア

Next.JSのAPIルートには、着信リクエストの解析に役立つミドルウェアが組み込まれています。

以下はミドルウェアです

  • req.cookies− Cookiesオブジェクトには、リクエストによって送信されたCookieが含まれます。デフォルト値は{}です。

  • req.query−クエリオブジェクトにはクエリ文字列が含まれています。デフォルト値は{}です。

  • req.body−クエリオブジェクトには、「content-type」を使用して解析されたリクエスト本文が含まれています。デフォルト値はnullです。

同じことを示す例を作成しましょう。

この例では、user.jsを更新します。 pages/api ディレクトリ。

APIルートの章で使用されているnextjsプロジェクトを更新しましょう。

次のように、pages / apiディレクトリにuser.jsファイルを作成します。

export default (req, res) => {
   res.statusCode = 200
   res.setHeader('Content-Type', 'application/json')
   res.end(JSON.stringify({ query: req.query }))
}

Next.jsサーバーを起動します

次のコマンドを実行してサーバーを起動します-。

npm run dev

> [email protected] dev D:\Node\nextjs
> next

ready - started server on http://localhost:3000
info  - Loaded env from D:\Node\nextjs\.env.local
event - compiled successfully
event - build page: /api/user
wait  - compiling...
event - compiled successfully
event - build page: /next/dist/pages/_error
wait  - compiling...
event - compiled successfully

出力を確認する

ブラウザでhttp:// localhost:3000 / api / user?counter = 1を開くと、次の出力が表示されます。

{"query":{"counter":"1"}}