REST表示代表性狀態(tài)傳輸。REST是一種基于Web標(biāo)準(zhǔn)的架構(gòu),并使用HTTP協(xié)議進(jìn)行數(shù)據(jù)通信。它圍繞著資源,其中每一個(gè)組件是資源和一個(gè)資源是由一個(gè)共同的接口,使用HTTP的標(biāo)準(zhǔn)方法獲得。REST最初是由Roy Fielding在2000年推出。
在REST架構(gòu)中,REST服務(wù)器只是提供的資源以及在REST客戶端訪問時(shí)提供資源。這里每個(gè)資源由URI標(biāo)識/全局標(biāo)識。REST采用各種申述表示類似文本,JSON和XML資源?,F(xiàn)在JSON是Web服務(wù)所使用的最流行的格式。
下列著名的HTTP方法是常用于基于REST的架構(gòu)。
GET - 提供的資源的只讀訪問。
PUT - 用于創(chuàng)建一個(gè)新的資源。
DELETE - 用于刪除資源。
POST - 用于更新現(xiàn)有資源或創(chuàng)建新的資源。
OPTIONS - 用于得到支持的操作上的資源。
Web服務(wù)是用于交換應(yīng)用程序或系統(tǒng)之間的數(shù)據(jù)開放的協(xié)議和標(biāo)準(zhǔn)的集合。編寫各種編程語言和運(yùn)行在不同平臺上的軟件應(yīng)用程序可以使用Web服務(wù)來以類似于進(jìn)程間通信在單臺計(jì)算機(jī)上的方式通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行交換數(shù)據(jù),如因特網(wǎng)。 這份互聯(lián)特性(如Java和Python,或Windows和Linux應(yīng)用程序之間),是由于使用開放標(biāo)準(zhǔn)。
基于REST架構(gòu)的Web服務(wù)稱為RESTful web服務(wù)。這些Web服務(wù)使用HTTP方法來實(shí)現(xiàn)REST架構(gòu)的概念。RESTful Web服務(wù)通常定義URI,統(tǒng)一資源標(biāo)識符的服務(wù),提供資源的表示,如JSON,并設(shè)置HTTP方法。
本教程將創(chuàng)建一個(gè)Web服務(wù)使用以下用戶管理功能:
| Sr. No. | HTTP 方法 | URI | 操作 | 操作類型 |
|---|---|---|---|---|
| 1 | GET | /UserService/users | 獲取用戶列表 | 只讀 |
| 2 | GET | /UserService/users/1 | 讀取用戶ID為1用戶信息 | 只讀 |
| 3 | PUT | /UserService/users/2 | 插入Id為2的用戶信息 | 等冪 |
| 4 | POST | /UserService/users/2 | 更新Id為2的用戶信息 | N/A |
| 5 | DELETE | /UserService/users/1 | 刪除Id為1的用戶信息 | 等冪 |
| 6 | OPTIONS | /UserService/users | 列出Web服務(wù)支持的操作 | 只讀 |