什么是RESTful風格?


 

一、概述

REST(英文:Representational State Transfer,簡稱REST)
一種軟件架構風格、設計風格,而不是標准,只是提供了一組設計原則和約束條件。它主要用於客戶端和服務器交互類的軟件。基於這個風格設計的軟件可以更簡潔,更有層次,更易於實現緩存等機制。

二、什么是RESTful

REST 指的是一組架構(約束條件)和原則。滿足這些(約束條件)和(原則)的應用程序或設計就是 RESTful。

三、restful有什么特點

1.每一個URI代表一種資源,獨一無二
2.客戶端和服務器之間,傳遞這種資源的某種表現層
3.客戶端通過四個HTTP動詞,對服務器端資源進行操作,實現"表現層狀態轉化"。

四、具體用例

RESTful架構風格規定,數據的元操作,即CRUD(create, read, update和delete,即數據的增刪查改)操作,分別對應於HTTP方法:GET用來獲取資源,POST用來新建資源(也可以用於更新資源),PUT用來更新資源,DELETE用來刪除資源,這樣就統一了數據操作的接口,僅通過HTTP方法,就可以完成對數據的所有增刪查改工作。

即:

GET(SELECT):從服務器取出資源(一項或多項)。
POST(CREATE):在服務器新建一個資源。
PUT(UPDATE):在服務器更新資源(客戶端提供完整資源數據)。
PATCH(UPDATE):在服務器更新資源(客戶端提供需要修改的資源數據)。
DELETE(DELETE):從服務器刪除資源。

 

使用RESTful操作資源 
【GET】 /users # 查詢用戶信息列表

【GET】 /users/1001 # 查看某個用戶信息

【POST】 /users # 新建用戶信息

【PUT】 /users/1001 # 更新用戶信息(全部字段)

【PATCH】 /users/1001 # 更新用戶信息(部分字段)

【DELETE】 /users/1001 # 刪除用戶信息
————————————————

RESTful的CRUD

@RequestMapping:通過設置method屬性的CRUD,可以將同一個URL映射到不同的HandlerMethod方法上。

@GetMapping、@PostMapping、@PutMapping、@DeleteMapping注解同@RequestMapping注解的method屬性設置。

 

我們都知道在沒有出現RESTful風格之前,我們的代碼是這樣的。

那么RESTful風格要求的是這樣的

 

五、結論

RESTful風格要求每個資源都使用 URI (Universal Resource Identifier) 得到一個唯一的地址。所有資源都共享統一的接口,以便在客戶端和服務器之間傳輸狀態。使用的是標准的 HTTP 方法,比如 GET、PUT、POST 和 DELETE。
總之就是REST是一種寫法上規范,獲取數據或者資源就用GET,更新數據就用PUT,刪除數據就用DELETE,然后規定方法必須要傳入哪些參數,每個資源都有一個地址。

參考:https://zhuanlan.zhihu.com/p/97507715


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM