日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

网上整理的对于Rest和Restful api的理解 - 那啥快看 - 博客园

發布時間:2023/12/10 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 网上整理的对于Rest和Restful api的理解 - 那啥快看 - 博客园 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、什么是Rest?

REST不是"rest"這個單詞,而是幾個單詞縮寫 -- REpresentational State Transfer 直接翻譯:表現層狀態轉移,但這個翻譯正常人根本看不懂,找到的一種最好理解的說法是,URL定位資源,用HTTP動詞(GET,POST,DELETE,DETC)描述操作。

REST成熟度的四個層次

? 第一個層次(Level0)的Web 服務只是使用 HTTP 作為傳輸方式,實際上只是遠程方法調用(RPC)的一種具體形? 式。SOAP和 XML-RPC都屬于此類。

? 第二個層次(Level1)的Web 服務引入了資源的概念。每個資源有對應的標識符和表達。

? 第三個層次(Level2)的Web 服務使用不同的 HTTP 方法來進行不同的操作,并且使用HTTP 狀態碼來表示不同的結果。如 HTTPGET 方法來獲取資源,HTTPDELETE 方法來刪除資源。

? 第四個層次(Level3)的Web 服務使用 HATEOAS。在資源的表達中包含了鏈接信息。客戶端可以根據鏈接來發現可以執行的動作。

二、Restful api接口有什么特征?

REST描述的是在網絡中client和server的一種交互形式;REST本身不實用,實用的是如何設計 RESTful API(REST風格的網絡接口)。

1.URL的根路徑

http://api.chesxs.com/v1

2.需要有api版本信息

http://api.chesxs.com/v1

3.URL中只使用名詞指定資源,不用動詞,且推薦使用復數

服務(Server)提供的RESTful API中,URL中只使用名詞來指定資源,原則上不使用動詞。“資源”是REST架構或者說整個網絡處理的核心。比如:

http://api.chesxs.com/v1/cars // 獲取某個賬戶下的車輛列表 http://api.chesxs.com/v1/fences // 獲取某個賬戶下的圍欄列表

4. 用HTTP協議里的動詞來實現資源的添加,修改,刪除等操作。即通過HTTP動詞來實現資源的狀態扭轉

GET 用來獲取資源, POST 用來新建資源(也可以用于更新資源)。比如:POST http://api.chesxs.com/v1/car: 添加車輛 PUT 用來更新資源, DELETE 用來刪除資源。比如:DELETE http://api.chesxs.com/v1/cars 刪除某輛車 (在http parameter指定好友id) UPDATE http://api.chesxs.com/v1/fence 更新圍欄信息 錯誤使用: GET http://api.chesxs.com/v1/deleteCar 刪除車輛

5.GET應該是安全的,不會改變資源狀態

?這個應該很好理解,get的時候就只是獲取資源,而不涉及添加、更新、刪除資源。

6.使用正確的HTTP Status Code返回狀態碼

常用的有404,200,500,400等等。

7.過濾信息

如果記錄數量很多,服務器不可能都將它們返回給用戶。API應該提供參數,過濾返回結果。

下面是一些常見的參數。

?limit=10:指定返回記錄的數量 ?offset=10:指定返回記錄的開始位置。 ?page=2&per_page=100:指定第幾頁,以及每頁的記錄數。 ?sortby=name&order=asc:指定返回結果按照哪個屬性排序,以及排序順序。 ?producy_type=1:指定篩選條件

8.規范返回的數據

為了保障前后端的數據交互的順暢,建議規范數據的返回,并采用固定的數據格式封裝。

接口返回模板:

{status:0,data:{}||[],msg:’’ }

?

?

總結,看一個標準的restful api要可以做到

看Url就知道要操作的資源是什么,是操作車輛還是圍欄 看Http Method就知道操作動作是什么,是添加(post)還是刪除(delete) 看Http Status Code就知道操作結果如何,是成功(200)還是內部錯誤(500)

?參考文章:https://www.cnblogs.com/bndong/p/6139598.html

總結

以上是生活随笔為你收集整理的网上整理的对于Rest和Restful api的理解 - 那啥快看 - 博客园的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。