コース一覧
    Node.js API開発
    Expressを導入する

    Node.js API開発

    HTTPサーバーとREST APIの設計・実装を学び、Node.jsでクライアントから使えるAPIを構築できるようにします。

    1
    はじめてのサーバー
    01. サーバーとリクエスト15分
    02. Expressを導入する15分
    03. ルーティング15分
    04. JSONを返す15分
    05. 開発の回し方15分
    06. つくる:サーバー始動20分
    07. 第3章クイズ10分
    2
    REST APIのきほん
    01. RESTの考え方15分
    02. 一覧を返す15分
    03. 1件を返す15分
    04. 登録を受ける15分
    05. 更新と削除15分
    06. ステータスコード15分
    07. つくる:商品CRUD完成20分
    08. 第4章クイズ10分

    Expressを導入する

    見分けを自分で書かない

    前のレッスンで、メソッドとパスから依頼を見分ける関数を書きました。あの if を、パスが増えるたびに足していくのは現実的ではありません。

    Express は、その見分けを引き受けてくれる部品です。第1章で触れたとおり npm で入れます。

    プレーンテキスト

    npm install express

    最小のサーバー

    Express で書くと、待ち受けはこれだけです。

    JavaScript

    const express = require("express");
    const app = express();
    
    app.get("/", (req, res) => {
      res.send("Hello fleama");
    });
    
    app.listen(3000);

    上から順に、部品を読み込み、アプリを作り、パスと処理を結びつけ、ポートで待ち始めます。

    app.get の 2 つの引数

    JavaScript

    app.get("/", (req, res) => { ... });

    1 つ目がパス、2 つ目がそのパスに来たときに動く関数です。この関数は、リクエストが届くたびに Express から呼ばれます。自分で呼ぶことはありません。

    引数の req と res には決まった役割があります。

    名前何が入っているか
    req届いたリクエスト。パスやボディを読む
    resこれから返す応答。ここに書いて返す

    読むのが req、書くのが res です。

    createApp という形

    このコースの演習では、app を作って返す関数を書きます。

    JavaScript

    function createApp() {
      const express = require("express");
      const app = express();
    
      // ここにパスを足していく
    
      return app;
    }

    listen は書きません。ポートで待つ代わりに、採点の仕組みが app を直接呼んでリクエストを届けます。実際のサーバーでは、この app に listen を付けて起動します。

    形が決まっているので、これから毎回この中を育てていきます。

    手を動かす

    演習では、はじめての Express サーバーを作ります。ルートのパスに来たら、あいさつを返してください。

    要件

    1. GET / に対して Hello fleama を返す
    2. GET /health に対して ok を返す
    3. 返すときは res.send(...) を使い、作った app を return する

    ヒント

    `app.get(パス, (req, res) => { ... })` の形でパスと処理を結びつけます

    返すのは `res.send("Hello fleama")` です。同じ形をもう 1 つ、`/health` にも書きます

    登録していないパスは Express が自動で 404 を返すので、自分で書く必要はありません

    生田 陸人
    監修生田 陸人
    ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
    編集 ゆめさく編集部·公開 2026/08/10

    関連レッスン

    • ルーティング

      ルートページとaboutページを作り、パスごとに応答を分けられるようになります。

    • JSONを返す

      商品1件をJSONで返し、APIらしい応答を返せるようになります。

    • 開発の回し方

      変更から確認までを短くする回し方を知り、開発を高速化できるようになります。

    • つくる:サーバー始動

      健康確認と商品一覧のパスを備え、起動から応答までを自力で組めるようになります。

    このレッスンに出てくる用語

    意味があいまいなまま進んだ語は、ここから読み直せます。

    • メソッドクラスに属する関数
    • 関数処理に名前を付けて再利用できる単位
    • サーバークライアント(ブラウザなど)がリクエストを送り、サーバーがレスポンスを返す。
    • 処理計算や代入を表す長方形
    • 引数位置引数=順番で渡す。
    • リクエストWeb 通信の基本単位、ブラウザの問い合わせとサーバーの返答
    main.js
    エディタを読み込んでいます

    メモ

    Expressを導入する

    ⌘S で保存