昨天提到了 routes 的部分,
route是我們開發步驟的首要事項,
然而這個 route 的設計,Rails 是使用 REST 的風格來設計的,
通常我們也會稱之為 RESTful API。
那我們先來介紹 API 是什麼
Application Programming Interface
API 是用於不同軟體系統間通訊的橋樑,
簡單來說,API 就像一個櫃檯,允許你透過特定的方式向另一個系統、服務或程式請求資訊或操作。
我們不需要知道他實際上是如何實作的,只要知道要怎麼使用它即可。
舉例來說:就像你走進一間餐廳,在菜單上畫好品項後遞給老闆,老闆就能夠提供你需要的餐點,而你不需要去在意餐點是怎麼被實做出來的。
所以比起在意它實際上怎麼被製作出來的,我們更在意怎麼獲得想要的東西,
因此會更在意:「輸入的方法」以及「輸出的結果」,對應上面的例子就是:「該如何點餐」以及「餐點的結果」。
全名:Representational State Transfer
也可譯為「具象狀態傳輸」
符合 REST 風格的網站架構可以稱為 RESTful。
它描述了如何實現 Web API 的架構,基於 HTTP 協定,用來建立分散式系統,並支援多種程式語言。
簡單的說,就是把每個網址當做資源(Resource)來看待,對同一個資源做不同的動作(HTTP Verb)會得到不同的結果。
而 RESTful API 就是,遵循著 REST 架構風格的 API。
RESTful API 請求資源的方法,需要包含的元件為:
如果我們要建立一個完整的 CRUD 系統,會直接使用 Rails 給的方法 resources
它會依照 RESTfull 標準來幫你產生 8 條不同的路由並且對應到 Controller 的 7 個方法。
譬如我們要做一個使用者系統,我們就直接打以下指令
resources :user
就會長出這些路徑