RESTful API是什么?


1. REST 是Repersentational State Transfer的縮寫

翻譯為"表述性狀態傳遞",那么什么是表述性狀態傳遞呢?為了理解這個詞語,我們從"RESTful是什么"這個問題開始講起。

REST不是標准,是一種設計風格。按照這個設計風格設計出來的API,就叫REST API。

2. 所有的東西都是資源,所有操作都通過對資源的增刪改查(CURD)實現

這個學過編程的應該很好理解,萬物皆對象,在REST中就是"萬物皆資源",每個資源對應一個唯一的全局資源的定位符(URI),資源是整個REST的基礎。其次,就是客戶端可以對資源進行管理,所有的管理操作都是通過HTTP的Action來實現。

3. 對資源的增刪改查對應URL的操作(POST,DELETE,PUT,GET)

4. 所有操作都是無狀態的

也就是不要使用Session

RESTful API示例

下面舉幾個RESTful API的例子,假設下面是一個學校學生信息的項目

  • URL: http://localhost/student
  • GET /student 獲取學生列表
  • POST /student 新學員報到
  • GET /student/110 獲取ID為110的學生信息
  • PUT /student/110 修改ID為110的學生信息
  • DELETE /student/110 刪除ID為110的學生信息
  • GET /student/110/home 獲取ID為110的學生的家庭信息

登錄/注銷該怎么設計API呢?

思考一下,我們登錄,肯定是為了登錄后做某些操作,實際上就是向服務器請求一些授權。那么注銷呢,就是請求服務器刪除這個授權。所以不難理解:

POST /teacher 登錄

DELETE /teacher 注銷

URI命名總結規律就是:

/資源名稱

/資源名稱/{資源ID}

/資源名稱/{資源ID}/子資源名稱

/資源名稱/{資源ID}/子資源名稱/{子資源ID}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM