【こあ】

Koa とは?

公開:
💡 小さな処理を重ねて、Webの受け答えを作る

Koaは、Node.jsでWebアプリやAPIを作るためのフレームワーク。ミドルウェアという処理を組み合わせ、async関数でリクエストとレスポンスを扱います。必要な周辺機能は別途選んで構成します。

📌 このページのポイント
処理を渡し、戻った後も続ける ログの処理開始時刻を覚える応答の処理内容を返すnext()戻る戻った後:所要時間などを記録Node.js上でミドルウェアを組み合わせる
Koaのミドルウェアの流れ。await next()の後へ進み、後続が終わると元の処理の続きを実行します。
ひよこ ひよこ
ペンギン先生、Koaを使うと何が作れる?
ペンギン先生 ペンギン先生
Node.jsでWebアプリやAPIのサーバーを作れるよ。例えばブラウザからの要求を受けて、文章やデータを返す処理を組み立てるんだ。
ひよこ ひよこ
ミドルウェアって、何を重ねるの?
ペンギン先生 ペンギン先生
ログを取る処理、応答にヘッダーを付ける処理、内容を返す処理などだよ。役割を小さく分けて組み合わせる。Koaのctxというオブジェクトで、その要求と応答を扱うんだ。
ひよこ ひよこ
処理は上から下へ進むだけ?
ペンギン先生 ペンギン先生
await next()で後続の処理へ渡し、それが終わると元の処理へ戻って続きを実行できるよ。出発時に時刻を覚え、戻ったときに所要時間を計算する、といった使い方ができるね。
ひよこ ひよこ
必要な機能は最初から全部入っている?
ペンギン先生 ペンギン先生
Koaの中核は小さく、ミドルウェアを一式内蔵してはいないよ。ルーティングや入力の解析など、必要な部品を選んで追加するんだ。追加した部品の設定や更新も確認しよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Koa」って出てきたら「Node.jsのWeb処理をミドルウェアで組み立てる道具」と思えばだいたいOK!
📖 おまけ:英語の意味
「Koa」 = Node.js向けWebフレームワークの名前
💬 ここではWebアプリやAPIを組み立てるソフトウェア名。Expressの開発に関わったチームが設計したよ。

参考資料

← 用語集にもどる