REST API簡介.md

概述

REST 從資源的角度來觀察整個網(wǎng)絡,分布在各處的資源由URI確定,而客戶端的應用通過URI來獲取資源的表示方式。獲得這些表示致使這些應用程序轉變了其狀態(tài)。隨著不斷獲取資源的表示方式,客戶端應用不斷地在轉變著其狀態(tài),所謂表述性狀態(tài)轉移(Representational State Transfer)。
這一觀點不是憑空臆造的,而是通過觀察當前Web互聯(lián)網(wǎng)的運作方式而抽象出來的。Roy Fielding 認為,“設計良好的網(wǎng)絡應用表現(xiàn)為一系列的網(wǎng)頁,這些網(wǎng)頁可以看作的虛擬的狀態(tài)機,用戶選擇這些鏈接導致下一網(wǎng)頁傳輸?shù)接脩舳苏宫F(xiàn)給使用的人,而這正代表了狀態(tài)的轉變?!?br> REST是設計風格而不是標準。REST通?;谑褂肏TTP,URI,和XML以及HTML這些現(xiàn)有的廣泛流行的協(xié)議和標準

  • 資源是由URI來指定
  • 對資源的操作包括獲取、創(chuàng)建、修改和刪除資源,這些操作正好對應HTTP協(xié)議提供的GET、POST、PUT和DELETE方法
  • 通過操作資源的表現(xiàn)形式來操作資源。
  • 資源的表現(xiàn)形式則是XML或者HTML,取決于讀者是機器還是人,是消費web服務的客戶軟件還是web瀏覽器。當然也可以是任何其他的格式。

HTTP操作

HTTP 請求方法在RESTful Web 服務中的典型應用
資源:

  • 一組資源的URI,比如http://example.com/resources/
    • GET:列出 URI,以及該資源組中每個資源的詳細信息(后者可選)。
    • PUT:使用給定的一組資源替換當前整組資源。
    • POST:在本組資源中創(chuàng)建/追加一個新的資源。 該操作往往返回新資源的URL。
    • DELETE:刪除 整組資源。
  • 單個資源的URI,比如http://example.com/resources/142
    • GET:獲取 指定的資源的詳細信息,格式可以自選一個合適的網(wǎng)絡媒體類型(比如:XML、JSON等)
    • PUT:替換/創(chuàng)建 指定的資源。并將其追加到相應的資源組中
    • POST:把指定的資源當做一個資源組,并在其下創(chuàng)建/追加一個新的元素,使其隸屬于當前資源
    • DELETE:刪除 指定的元素
  • 備注:
    PUT 和 DELETE 方法是冪等方法。GET方法是安全方法 (不會對服務器端有修改,因此也是冪等的)。冪等方法就是無論進行幾次操作結果都不會改變的安全方法
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 一說到REST,我想大家的第一反應就是“啊,就是那種前后臺通信方式?!钡窃谝笤敿氈v述它所提出的各個約束,以及如...
    時待吾閱讀 3,601評論 0 19
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,586評論 19 139
  • API定義規(guī)范 本規(guī)范設計基于如下使用場景: 請求頻率不是非常高:如果產(chǎn)品的使用周期內請求頻率非常高,建議使用雙通...
    有涯逐無涯閱讀 2,934評論 0 6
  • >學習工具 .英語閱讀:夏鵬暴虐朗讀 .小程序 .JavaScrip >認知提升 .刻意練習:寫作李笑來 .聽書:...
    魚和大象閱讀 302評論 2 0
  • 題目1: 實現(xiàn)如下圖Tab切換的功能 題目2:實現(xiàn)下圖的模態(tài)框功能,點擊模態(tài)框不隱藏,點擊關閉以及模態(tài)框以外的區(qū)域...
    mhy_web閱讀 344評論 0 0

友情鏈接更多精彩內容