【aspida】Next.jsのmiddlewareで使えない

こんにちは、フリーランスエンジニアの太田雅昭です。

2023/12/29追記

aspida/fetchなら、middlewareでも使えるようです。ですので、以下の記事は一部誤りがあります。

aspidaについて

aspidaは、Swaggerから情報を取得して、自動でAPIクライアントを実装してくれる優れものです。

GitHub – aspida/aspida: TypeScript friendly HTTP client wrapper for the browser and node.js.

TypeScript friendly HTTP client wrapper for the browser and node.js. – GitHub – aspida/aspida: TypeScript friendly HTTP client wrapper for the browser and node.js.

今の所一人でやっている私にとって、自動化できるところはどんどんやっていきたいため、こういうのはとてもありがたいです。

middlewareでは使えない

でも残念ながら、Next.jsのmiddlewareでは使えません。middlewareで認証を行ないたかったのですが、どうもそううまくはいかないようです。原因は、Next.jsのmiddlewareが、特殊な動き、多分ライブラリを十分に読み込まずに動作しているためのようです。

aspidaはaxiosとfetchの両方をサポートしているため、一応両方試してみました。ですが、どうもできないようです。

middlewareでは純粋にfetchだけで実装する

middlewareでのみ、純粋にfetchで実装することにしました。うーむ残念無念。

小話

今日は久しぶりにコーヒーが飲みたかったので、サイゼリアへ行きました。ペペロンチーノ、普通に美味しかったです。でも今、Youtubeでサイゼリアのペペロンチーノは残念という声を聞いて、自分の舌に不信感を抱き、なかやまきんに君ばりに舌を叱責している今日この頃です。ちなみにコーヒーはというと、うーむ。ただただ薄い苦いコーヒーという感じで。やっぱりコーヒーはやはりスタバが私的には一番です。