最近這些年,REST已經成為web services和APIs的標準架構,很多APP的架構基本上是使用RESTful的形式了。本文將會使用python的Flask框架輕鬆實現一個RESTful的服務。REST的六個特性:Client-Server:伺服器端與客戶端分離。Stateless(無狀態):每次客戶端請求必需包含完整的資訊,換句話說,每一次請求都是獨立的。Cacheable(可快取):伺服器端必需指定哪些請求是可以快取的。Layered System(分層結構):伺服器端與客戶端通訊必需標準化,伺服器的變更並不會影響客戶端。Uniform Interface(統一介面):客戶端與伺服器端的通訊方法必需是統一的。Code on demand(按需執行程式碼?):伺服器端可以在上下文中執行程式碼或者指令碼?Servers can provide executable code or scripts for clients to execute in their context. This constraint is the only one that is optional.(沒看明白)RESTful web service的樣子REST架構就是為了HTTP協議設計的。RESTful web services的核心概念是管理資源。資源是由URIs來表示,客戶端使用HTTP當中的"POST, OPTIONS, GET, PUT, DELETE"等方法傳送請求到伺服器,改變相應的資源狀態。
最近這些年,REST已經成為web services和APIs的標準架構,很多APP的架構基本上是使用RESTful的形式了。本文將會使用python的Flask框架輕鬆實現一個RESTful的服務。REST的六個特性:Client-Server:伺服器端與客戶端分離。Stateless(無狀態):每次客戶端請求必需包含完整的資訊,換句話說,每一次請求都是獨立的。Cacheable(可快取):伺服器端必需指定哪些請求是可以快取的。Layered System(分層結構):伺服器端與客戶端通訊必需標準化,伺服器的變更並不會影響客戶端。Uniform Interface(統一介面):客戶端與伺服器端的通訊方法必需是統一的。Code on demand(按需執行程式碼?):伺服器端可以在上下文中執行程式碼或者指令碼?Servers can provide executable code or scripts for clients to execute in their context. This constraint is the only one that is optional.(沒看明白)RESTful web service的樣子REST架構就是為了HTTP協議設計的。RESTful web services的核心概念是管理資源。資源是由URIs來表示,客戶端使用HTTP當中的"POST, OPTIONS, GET, PUT, DELETE"等方法傳送請求到伺服器,改變相應的資源狀態。