json-server 的使用(入門篇)

作爲一個前端開發工程師,在後端還沒有ready的時候,不可避免的要使用mock的數據。很多時候,我們並不想使用簡單的靜態數據,而是希望自己起一個本地的mock-server來完全模擬請求以及請求回來的過程。json-server是一個很好的可以替我們完成這一工作的工具。我們只需要提供一個json文件,或者寫幾行簡單的js腳本就可以模擬出RESTful API的接口。

首先,提供一個很不錯的json-server 入門視頻小教程Creating Demo APIs with json-server

github地址:https://github.com/typicode/json-server

安裝json-server

npm install -g json-server
$ json-server -v
0.14.0


創建db.json
在一個文件夾下新建一個db.json文件

{
  "posts": [
    { "id": 1, "title": "json-server", "author": "typicode" }
  ],
  "comments": [
    { "id": 1, "body": "some comment", "postId": 1 }
  ],
  "profile": { "name": "typicode" }
}


啓動json-server
在當前文件夾下輸入如下命令:

json-server db.json


控制檯如下:

 \{^_^}/ hi!
 
  Loading db.json
  Done
 
  Resources
  http://localhost:3000/posts
  http://localhost:3000/comments
  http://localhost:3000/profile
 
  Home
  http://localhost:3000
 
  Type s + enter at any time to create a snapshot of the database


表明我們的json-server 已經啓動成功。我們可以通過postman以及瀏覽器發送請求,獲得相應數據了。 “http://localhost:3000/posts”等即爲請求的url。

發送GET請求http://localhost:3000/posts,可獲得如下的response:

[
  {
    "id": 1,
    "title": "json-server",
    "author": "typicode"
  }
]


同時json-server還給我們提供了一個瀏覽器的可視化主頁,通過“http://localhost:3000”即可進行訪問。

在瀏覽器中打開“http://localhost:3000”,界面如下圖所示:

分別點擊相應的Resources鏈接,可直接查看每個endpoint的返回結果,同時,它還標註了返回結果的類型。

Tips:
1、使用“json-server --watch db.json”命令可以實時監測db.json的變化;如果沒有 -- watch 命令,即使db.json已經發生了改變,重新發請求,仍然會返回原先的mock data,返回狀態碼304,認爲沒有變化。

GET /people 304 3.883 ms - -


2、同時,我們可以發送 POST、PUT、PATCH和DELETE請求,相應的結果會通過lowdb自動保存到db.json。關於POST、PUT等相關請求的發送,這裏不再做贅述,視頻教程中有詳細的講解。

3、我們的request body應該是一個json對象,比如{"name":"Lynn"};

4、POST、PUT、PATCH請求頭中要包含Content-Type: application/json;

5、id的值是自動生成且不易變的。PUT請求和PATCH請求中自帶的id會被忽略。

 

至此,已經可以滿足mock-server的一些基本需求,下面將詳細講解json-server的一些更高級功能。

json-server的使用(進階篇) 未完待續。。。

原文:https://blog.csdn.net/weixin_40817115/article/details/81237128 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章