[NOTE] RESTful架构
生活随笔
收集整理的這篇文章主要介紹了
[NOTE] RESTful架构
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
[NOTE] RESTful架構
前言
是對RESTful架構的學習筆記
學習資料:
- 理解RESTful架構-阮一峰
- RESTful架構詳解-菜鳥教程
正文
概念
REST
Representational State Transfer
表現(xiàn)層狀態(tài)轉(zhuǎn)化(表征性狀態(tài)轉(zhuǎn)移)
EST本身并沒有創(chuàng)造新的技術、組件或服務,而隱藏在RESTful背后的理念就是使用Web的現(xiàn)有特征和能力,更好地使用現(xiàn)有Web標準中的一些準則和約束。雖然REST本身受Web技術的影響很深,但是理論上REST架構風格并不是綁定在HTTP上,只不過目前HTTP是唯一與REST相關的實例。所以我們這里描述的REST也是通過HTTP實現(xiàn)的REST。
- 資源
就是網(wǎng)絡上的一個實體,或者說是網(wǎng)絡上的一個具體信息(由URL指向) - 表現(xiàn)層
我們把"資源"具體呈現(xiàn)出來的形式,叫做它的"表現(xiàn)層"(如JPG/PNG) - 狀態(tài)轉(zhuǎn)化
如果客戶端想要操作服務器,必須通過某種手段,讓服務器端發(fā)生"狀態(tài)轉(zhuǎn)化"
具體指HTTP協(xié)議里面,四個表示操作方式的動詞:GET、POST、PUT、DELETE
綜述
- 每一個URI代表一種資源
- 客戶端和服務器之間,傳遞這種資源的某種表現(xiàn)層
- 客戶端通過四個HTTP動詞,對服務器端資源進行操作,實現(xiàn)"表現(xiàn)層狀態(tài)轉(zhuǎn)化"
一些誤區(qū)
- URL不應包含動詞
如某個URI是/posts/show/1,其中show是動詞,這個URI就設計錯了
正確的寫法應該是/posts/1,然后用GET方法表示show - URL不應包含版本號
就類似于URL不應暴露接口版本
應該使用同一URL,在HTTP請求頭信息的Accept字段中進行版本區(qū)分
其他
所以關鍵應該是聯(lián)系上四個HTTP方法的使用
GET、PUT、POST、DELETE
然后還有一些關于各操作是否冪等或是否安全的說法…
先這樣吧,OFF
總結
以上是生活随笔為你收集整理的[NOTE] RESTful架构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [NOTE] sqli-labs Bas
- 下一篇: [NOTE] sqli-labs Adv