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