背景
本文簡述了什么是 RESTful Web服務(wù)
REST 和 RESTful
Representational State Transfer (縮寫:REST)直譯就是表現(xiàn)層狀態(tài)轉(zhuǎn)換,它是一種便于不同軟件/程序在網(wǎng)絡(luò)中互相傳遞信息 的架構(gòu)風(fēng)格井联。符合這種架構(gòu)風(fēng)格的網(wǎng)絡(luò)服務(wù) 可被稱為 RESTful 風(fēng)格校坑。
RESTFUL特點包括:
- 1扒寄、資源:每一個 URI 都代表一種資源毫别;
- 2、方法:客戶端使用GET、POST儿普、PUT、DELETE4個表示操作方式的動詞對服務(wù)端資源進行操作:GET用來獲取資源掷倔,POST用來新建資源(也可以用于更新資源)眉孩,PUT用來更新資源,DELETE用來刪除資源勒葱;
- 3浪汪、方法操作資源:通過不同方法來操作資源,導(dǎo)致了資源不同的表現(xiàn)形式凛虽。
- 4死遭、操作結(jié)果表現(xiàn):資源的表現(xiàn)形式可以是JSON,XML或者HTML等凯旋;
- 5呀潭、無狀態(tài):客戶端與服務(wù)端之間的交互在請求之間是無狀態(tài)的,從客戶端到服務(wù)端的每個請求都必須包含理解請求所必需的信息至非。
總結(jié)就是:
上面的提到的特點钠署,可以總結(jié)為“ 用明確的方法 操作 語義清晰的資源,來呈現(xiàn)不同的資源表現(xiàn)形式
”睡蟋。
- 明確的方法是指HTTP的get,post方法踏幻;
- 清晰的資源指一個語義表達清晰的網(wǎng)址;
- 不同的資源表現(xiàn)形式是指導(dǎo)致了資源的狀態(tài)變化戳杀。
即:
看到 URI 就知道要資源什么 (是什么)
看到 HTTP 方法 就知道干什么 (怎么做)
看到 HTTP 響應(yīng)该面,就知道結(jié)果如何 (結(jié)果如何)
示例
用示例表示。
比如:
列舉所有商品
GET http://www.store.com/products
備注:這里表達了信卡,將獲得這個網(wǎng)站下的所有商品隔缀。
呈現(xiàn)某一件商品
GET http://www.store.com/products/12345
備注:這里表達了,將獲得第 12345 號 商品傍菇。
下單購買
POST http://www.store.com/orders
<purchase-order>
<item> ... </item>
</purchase-order>
備注:這里表達了猾瘸,使用POST方法發(fā)送訂單信息的內(nèi)容
參考
https://baike.baidu.com/item/RESTful/4406165?fr=aladdin
https://zh.wikipedia.org/wiki/%E8%A1%A8%E7%8E%B0%E5%B1%82%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2
https://www.zhihu.com/question/28557115
END