コース一覧
    Node.js API開発
    つくる:商品CRUD完成

    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分

    つくる:商品CRUD完成

    新しいことは出てきません

    この回では、新しい知識は 1 つも出てきません。第4章の 5 つのルートを 1 つの createApp にまとめて、fleama の商品 API を完成させます。

    設計図と突き合わせる

    最初に書いた表がそのまま完成の基準になります。

    プレーンテキスト

    GET    /items      商品一覧を返す          200
    GET    /items/:id  商品1件を返す           200 / 404
    POST   /items      商品を登録する          201
    PUT    /items/:id  商品を書き換える        200 / 404
    DELETE /items/:id  商品を削除する          204 / 404

    この 5 行が揃うと、フリマとして必要な操作が一通りできます。CRUD と呼ばれる 4 つの操作、つまり作る・読む・書き換える・消すが、これで出そろいました。

    同じ形が繰り返される

    5 つを並べると、変更系がどれも同じ骨格をしていることが分かります。

    1. 対象を探す
    2. 無ければ 404 を返して抜ける
    3. あれば処理して、決まったコードで返す

    この繰り返しに気付けたなら、第4章の狙いは達成できています。同じ形が続くということは、あとでまとめて直せるということでもあります。第5章のミドルウェアで、その手立てを学びます。

    ここまでに手に入れたもの

    何をどのレッスンで
    リソースとメソッドで設計するRESTの考え方
    コレクションを返す一覧を返す
    パスの一部を受け取り、404 を返す1件を返す
    本文を受け取り、201 を返す登録を受ける
    書き換えと 204 の削除更新と削除
    番号で結果を伝えるステータスコード

    手を動かす

    演習では、5 つのルートをすべて備えた商品 API を組み立てます。第4章の総仕上げです。

    要件

    1. GET /items は一覧を配列で、GET /items/:id は 1 件を返す(無ければ 404)
    2. POST /items は「最大の id + 1」で登録し 201 で返す(sold は false)
    3. PUT /items/:id は name と price を書き換えて 200、DELETE /items/:id は 204 を本文なしで返す(どちらも無ければ 404)

    ヒント

    初期コードには一覧だけがあります。残り 4 つを足していきます

    変更系はどれも「探す・無ければ 404・あれば処理」の同じ骨格です

    返すときは必ず `toPublic(...)` を通して、`ownerEmail` が外に出ないようにします

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

    関連レッスン

    • 第4章クイズ

      RESTとステータスコードの理解を4択で確認します。

    • ステータスコード

      各APIの返却コードを整え、状況に応じた番号を返せるようになります。

    • 更新と削除

      商品編集と取下げのAPIを書き、変更系を実装できるようになります。

    • 登録を受ける

      出品APIを書き、作成したときに201を返せるようになります。

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

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

    • エンドポイント「この URL を叩くとこの機能が動く」入口の住所
    • APIアプリ間でデータをやり取りする窓口
    • 設計何をどう作るかを決める前工程
    • 処理計算や代入を表す長方形
    • ミドルウェアリクエストとレスポンスの間に挟まる処理関数。
    • メソッドクラスに属する関数
    • ステータスコード200/201/404 など結果を示す3桁の数値
    • 配列サイズ固定の同型データの集まり
    main.js
    エディタを読み込んでいます

    メモ

    つくる:商品CRUD完成

    ⌘S で保存