rest api の簡易構築手順

PoC(Proof of Concept、「概念実証」「コンセプト実証」)とかで、APIからデータを取得して処理を行う箇所の実装や確認を行いたい時があって、これまで、他の方に用意してもらっていましたが、それだと動きが遅くなってしまうので、自分で構築するようにしました。

typicode/json-serverを使わせていただきました。

簡単に構築できて便利です。

以下、手順です。
たまたま、英語で書く機会があったので、英語でまとめています。

Environment

Base Setting

  1. Install json server.
    $ npm install -g json-server
  2. Create json resource.
    $ vi db.json
    {
    api_name: [
        {id: 1, name: The Godfather, director:Francis Ford Coppola, rating: 9.1},
        {id: 2, name: Casablanca, director: Michael Curtiz, rating: 8.8}
    ]
    }

    ->make 2 data.

  3. Start up server.
    $ json-server --watch db.json
  4. Test mock api.(Another terminal)

    $ curl -X GET http://localhost:3000/api_name

    -> get all data on the server.

    If you get data of another id( = 1), you set url as below.

    http://localhost:3000/api_name/1
  5. Add new data to the server.
    $ curl -X POST -H Content-Type: application/json -d '{
    id: 3,
    name: name3,
    director: Christopher Nolan,
    rating: 9.0
    }' http://localhost:3000/api_name

    Note: When sending PUT, POST, PATCH request, set Content-Type:application/json in the header.

Route setting

  1. Create route file.
    $ vi route.json
    {
    /api/v1/hoge/api_mane/*: /api_name/$1
    }
  2. Restart server.
    $ json-server --watch db.json --routes route.json