REST 是面向資源的求厕,這個(gè)概念非常重要著隆,而資源是通過 URI 進(jìn)行暴露。
REST API 是基于 HTTP的呀癣,所以你的API應(yīng)該去使用 HTTP的一些標(biāo)準(zhǔn)美浦。
REST是一個(gè)標(biāo)準(zhǔn),一種規(guī)范项栏,遵循REST風(fēng)格可以使開發(fā)的接口通用浦辨,便于調(diào)用者理解接口的作用。
在設(shè)計(jì)web接口的時(shí)候沼沈,REST主要是用于定義接口名流酬,接口名一般是用名次寫,不用動(dòng)詞列另,那怎么表達(dá)“獲取”或者“刪除”或者“更新”這樣的操作呢——用請(qǐng)求類型來區(qū)分芽腾。
比如,我們有一個(gè)friends接口页衙,對(duì)于“朋友”我們有增刪改查四種操作摊滔,怎么定義REST接口?
增加一個(gè)朋友店乐,uri: generalcode.cn/v1/friends 接口類型:POST
刪除一個(gè)朋友艰躺,uri: generalcode.cn/va/friends 接口類型:DELETE
修改一個(gè)朋友,uri: generalcode.cn/va/friends 接口類型:PUT
查找朋友眨八,uri: generalcode.cn/va/friends 接口類型:GET
上面我們定義的四個(gè)接口就是符合REST協(xié)議的腺兴,請(qǐng)注意,這幾個(gè)接口都沒有動(dòng)詞廉侧,只有名詞friends页响,都是通過Http請(qǐng)求的接口類型來判斷是什么業(yè)務(wù)操作。
舉個(gè)反例:generalcode.cn/va/deleteFriends 該接口用來表示刪除朋友伏穆,這就是不符合REST協(xié)議的接口拘泞。
一般接口的返回值是JSON或者XML類型的,筆者在互聯(lián)網(wǎng)的工作經(jīng)驗(yàn)一般都是JSON類型的枕扫。
用HTTP Status Code傳遞Server的狀態(tài)信息陪腌。比如最常用的 200 表示成功,500 表示Server內(nèi)部錯(cuò)誤,403表示Bad Request等诗鸭。(反例:傳統(tǒng)web開發(fā)返回的狀態(tài)碼一律都是200染簇,其實(shí)不可取。)
那這種風(fēng)格的接口有什么好處呢强岸?前后端分離锻弓。前端拿到數(shù)據(jù)只負(fù)責(zé)展示和渲染,不對(duì)數(shù)據(jù)做任何處理蝌箍。后端處理數(shù)據(jù)并以JSON格式傳輸出去青灼,定義這樣一套統(tǒng)一的接口,在web妓盲,ios杂拨,android三端都可以用相同的接口,是不是很爽悯衬?弹沽!
引用:https://blog.csdn.net/qq_21383435/article/details/80032375
引用詳細(xì):https://blog.csdn.net/intelrain/article/details/80449371