restful是什麼
如果架構符合REST原則,就稱它為RESTful架構。
RESTful API實用的是如何正確地理解 RESTful架構和設計好RESTful API。首先為什麼要用RESTful結構呢?大家都知道"古代"網頁是前端後端融在一起的,例如之前的PHP,JSP等。在之前的桌面時代問題不大,但是近年來行動互聯網的發展,各種類型的Client層出不窮,RESTful可以透過一套統一的介面為 Web,iOS和Android提供服務。另外對於廣大平台來說,例如Facebook platform,微博開放平台,微信公共平台等,它們不需要有顯式的前端,只需要一套提供服務的接口,於是RESTful更是它們最好的選擇。在RESTful架構下:
#先說REST名稱
REST - - REpresentational State Transfer
首先,之所以晦澀是因為前面主詞被去掉了,全稱是Resource Representational State Transfer:通俗來講就是:資源在網絡中以某種表現形式進行狀態轉移。分解開來:
Resource:資源,也就是資料(前面說過網路的核心)。例如 newsfeed,friends等;
Representational:某種表現形式,例如用JSON,XML,JPEG等;
State Transfer:狀態變化。透過HTTP動詞實現。
REST的來源
Roy Fielding的畢業論文。這哥們參與設計HTTP協議,也是Apache Web Server專案(可惜現在已經是 nginx 的天下)的co-founder。 PhD的畢業學校是 UC Irvine,Irvine在加州,有著充裕的陽光和美麗的海灘,是著名的富人區。 Oculus VR 的總部就坐落於此(虛擬實境眼鏡,被FB收購,CTO為Quake和Doom的作者 John Carmack)。
眾說周知,論文都是晦澀難懂的。當年在CMU讀書的時候,很多課程都會安排每週兩篇的Paper review。現在回想起來每次寫Paper review都是我最為痛苦的時候。 REST這篇博士論文毫無疑問更甚。
綜述
綜合上面的解釋,我們總結什麼是RESTful架構:
(1)每一個URI代表一個資源;
(2)客戶端和伺服器之間,傳遞這種資源的某種表現層;
(3)客戶端透過四個HTTP動詞,對伺服器端資源進行操作,實現"表現層狀態轉換"。
以上是restful是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!