理解RESTful架構與json-server模擬REST api的使用

1、什麼是RESTful架構?

REST即Representational State Transfer的縮寫,咱們把他翻譯爲表述性狀態傳遞,是Roy Fielding博士在2000年他的博士論文中提出來的一種軟件架構風格。它是一種針對網絡應用的設計和開發方式,能夠下降開發的複雜性,提升系統的可伸縮性前端

固然咱們把一個符合這種REST風格的架構就叫作RESTful風格npm

2、理解REST自己的意義

1.Representational表現層
咱們把"資源"具體呈現出來的形式,叫作它的"表現層"
咱們能夠用URI(統一資源定位符)指向"資源",URI只表明"資源"的位置,它的具體表現形式,應該在HTTP請求的頭信息中用Accept和Content-Type字段指定,這兩個字段纔是對"表現層"的描述json

2.State Transfer狀態轉化
訪問一個網站就要涉及客戶端與服務器端的互動,同時也確定要涉及數據與狀態的變化。網站後端提供資源查詢服務的,一切皆資源,服務器保存資源,客戶端請求資源。
HTTP是個無狀態的協議,因此狀態就保存在服務器端。因此此時客戶端想要操做服務器端,就必須引發服務器端的State Transfer(狀態轉化),這就須要一些手段。後端

客戶端操做引發服務器端的State Transfer手段通常有如下四種
HTTP動詞 操做
GET 用來獲取資源
POST 新建資源
PUT 更新資源
DELETE 刪除資源服務器

3、使用json-server模擬REST API(接口)

在開發過程當中, 先後端分離, 接口多半是滯後於頁面開發因此須要創建一個REST風格的API接口, 給前端頁面提供,虛擬的數據,是很是必要的。json-server只要少許的數據就可以使用,支持cors 和jsonp。同時支持get post put delete patch,同時提供一系列的查詢方法如limit order。網絡

1.配置環境
yarn add global json-server(npm install json-server -g ) 架構

圖片描述

2.json數據
圖片描述cors

3.json-server的使用
我比較喜歡使用Postman(Postman是一款功能強大的網頁調試與發送網頁HTTP請求的Chrome插件),
在命令行中進入當前文件夾輸入npm run server
(1).選擇操做
圖片描述前後端分離

(2).GET操做(讀取id= 1 的comments)
圖片描述post

圖片描述

(3).POST操做(新建id= 2 的comments)
對應的db.json中的數據

"comments": [
    {
      "body": "Hello laowang",
      "id": 1
    },
    {
      "body": "Hello json-server",
      "id": 2
    }
  ]

(4). PUT操做(更新id= 2 的comments)
圖片描述

"comments": [
    {
      "body": "Hello laowang",
      "id": 1
    },
    {
      "body": "Hello update",
      "id": 2
    }
  ],

(5). DELETE操做(刪除id= 2 的comments)
圖片描述

"comments": [
    {
      "body": "Hello laowang",
      "id": 1
    }
  ]
相關文章
相關標籤/搜索