亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是REST API?REST API的工作原理是什么?

發布時間:2020-06-08 17:53:42 來源:億速云 閱讀:634 作者:Leah 欄目:云計算

什么是REST API?REST API的工作原理是什么?這些問題可能是我們日常工作會見到的。通過這些問題,希望你能收獲更多。下面是揭開這些問題的詳細內容。

首先要理解REST是Representational State Transfer 的縮寫,簡單地說它是Web應用程序或者移動應用程序、或者智能手表、或者任何使用數據訪問的接口。

當客戶端提交請求時,在這種情況下得到一個資源,REST API 接收該請求,標識所請求的資源,找出哪些數據需要聚集、什么格式、數據匹配的創建一個表示請求的格式,包括像resource ID、指向可用動作的Hyperlinks 等,回應多媒體格式的響應發送,并將其發送回客戶端。客戶端接收數據并將其解析為有意義的內容,而REST API則等待下一個請求。

簡單而言,客戶端發出請求,REST API 接收請求、收集和解析數據,并將數據和響應標頭返回給客戶端。

為了更好的理解REST,我們先來分解一下REST的6個約束條件:

1.Client-Server架構,這個約束確保了客戶端管理用戶界面,而服務器端管理數據存儲,簡而言之,我們將內容與它的交互完全分離。

  1. 無狀態性,在請求之間,補鞥呢在服務器上存儲客戶端上下文或者信息(即狀態),客戶端負責跟蹤自己的會話狀態,從客戶端發送的所有請求必須是自包含和完整的,如果客戶端的會話狀態是相關的,則必須將其請求一起發送,如果服務器需要存儲該狀態,則必須在特定時間將其傳遞到數據庫或者類似服務。
  2. 可緩存性,緩存是Web體系結構和性能優化的關鍵部分,所有REST響應必須被清楚地標記為可緩存或者不可緩存,以確保緩存在客戶端按預期工作。
  3. 分層系統,系統必須設計成客戶端不能知道它是直接連接到服務器還是連接到鏡像等中介,這樣可以確保可伸縮性,也有助于安全性。
  4. 按需編碼,允許服務器以客戶端JavaScript和已編譯組件的形式向客戶端傳輸可執行的代碼,以擴展和自定義功能,這是REST不太常見的用法。
  5. 統一接口,必須在請求中使用資源標識,在Web上的REST系統中,URI用于發送請求,該URI將指定它要查找的資源,這里的關鍵是服務器上的數據,REST 返回的是該資源的一種表現,它可以具有與服務器資源不同的格式,所以,雖然資源數據可以作為表存儲在我的SQL中,但返回可能是JSON或者XML設置HTML,接下來,一旦客戶端擁有了資源的表示,它還可以修改或者刪除該資源。第三,統一接口必須發布描述信息,這適用于發送和接收REST數據,如果接收JSON,則響應信息的媒體類型將設置為JSON,沒有這些信息,就無法可靠地解析數據。第四,統一接口必須使用超媒體作為應用狀態的引擎,這是一種復雜的說法,一旦客戶端訪問REST資源,它就能夠通過提高的超鏈接發現所有可用的資源和方法。

換句話說,REST服務描述了它自己對每個返回資源的使用,當且僅當基于Web的API滿足這6個約束時,就可以認為它是RESTful API。

現在我們將從一個基本的Get請求開始,一個Application/json格式體的例子如下:

{
"<name>": "<value>"
}

樣例:如果你想使用類似下方的請求頭字段為Azure Resource Manager provider 發送一個Https get的請求方法

GET /subscriptions?api-version=2014-04-01-preview HTTP/1.1
Authorization: Bearer <bearer-token>
Host: management.azure.com

看完上述內容,你們對REST API有進一步的了解嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彭山县| 抚宁县| 武功县| 罗江县| 长顺县| 城口县| 获嘉县| 邯郸县| 赤水市| 河北省| 丰原市| 孟州市| 惠水县| 盖州市| 皋兰县| 中江县| 荥经县| 高尔夫| 海兴县| 哈尔滨市| 鲜城| 鹿泉市| 阿荣旗| 山西省| 双江| 富平县| 海口市| 绥阳县| 赤水市| 桃江县| 清水河县| 长治县| 凯里市| 南岸区| 襄樊市| 西乌珠穆沁旗| 穆棱市| 伊宁县| 上高县| 武邑县| 高州市|