[Nuxt3 beta] server apiを試してみた
2021-10-30
公式の解説通りに設定します。
https://v3.nuxtjs.org/docs/directory-structure/server
1. server/apiディレクトリの作成
2. エンドポイントごとにファイルを作成
/api/some-api
なら、/server/api/some-api.ts
を作成します。
3. エンドポイントの処理を記述
最もシンプルなもの
export default (req, res) => 'Hello World'
asyncを使用する場合
export default async (req, res) => {
await someAsyncFunction()
return {
someData: true
}
}
Node.js風
import type { IncomingMessage, ServerResponse } from 'http'
export default async (req: IncomingMessage, res: ServerResponse) => {
res.statusCode = 200
res.end('Works!')
}
これでapiを呼び出せるようになります。
最後に
とにかく動作が比べ物にならないぐらい速いのは素晴らしいです。
それとnuxt.config
に何も記述しなくてもファイルを作るだけでルーティングされるのは楽ですね。
しかしドキュメントを見てもリクエストメソッドごとのルーティングはちょっとわかりませんでした。
ベータということで表示できないページもありますし、正式リリース後にまた触ってみようと思います。