PoC(Proof of Concept、「概念実証」「コンセプト実証」)とかで、APIからデータを取得して処理を行う箇所の実装や確認を行いたい時があって、これまで、他の方に用意してもらっていましたが、それだと動きが遅くなってしまうので、自分で構築するようにしました。
typicode/json-serverを使わせていただきました。
簡単に構築できて便利です。
以下、手順です。
Environment
Base Setting
- Install json server.
$ npm install -g json-server
- Create json resource.
$ vi db.json
write data.
{ "api_name": [ {"id": 1, "name": "The Godfather", "director": "Francis Ford Coppola", "rating": 9.1}, {"id": 2, "name": "Casablanca", "director": "Michael Curtiz", "rating": 8.8} ] }
->create two datas.
- Start up server.
$ json-server --watch db.json
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
- 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
- Create json resource.
$ vi route.json
write data.
{ "/api/v1/hoge/api_mane/*": "/api_name/$1" }
- Restart server.
$ json-server --watch db.json --routes route.json
コメント