REST 易於構建和使用,因此已迅速成爲在網絡上構建 Web 服務的實際標準。
關於 REST 如何適合微服務世界,還有很多討論,但是 - 在該教程中 - 讓我們來看 RESTful 服務的構建。
爲什麼要 REST?REST 包含 Web 的戒律,包括其體系結構,優勢和其他所有內容。鑑於其作者 Roy Fieldling 參與了一打監督網絡操作的規範。
有什麼好處?Web 及其核心協議 HTTP 提供了一系列功能:
- 適當的操作(
GET
、POST
、PUT
、DELETE
,等等); - 緩存;
- 重定向和轉發;
- 安全性(加密和認證)。
這些都是構建彈性服務的關鍵因素。但着還不是全部。網絡基於許多微小的規範,因此可以輕鬆發展,而不會陷入 “標準之戰”。
開發人員可以利用實現這些不同規格的第三方工具包,立即擁有客戶端和服務器技術。
因此,基於 HTTP 的 REST API 提供了構建靈活的 API 的方法,這些 API 可以:
- 支持向後兼容;
- 可進化的 API;
- 可擴展的服務;
- 安全的服務;
- 無狀態到由狀態服務的範圍。
要意識到的重要一點是,REST 本身無處不在,不是一種標準,而是一種體系結構上的方法、樣式和約束,可以幫助我們構建 Web 規模的系統。在該教程中,我們將使用 Spring 產品組合來構建 RESTful 服務,同時利用 REST 的無堆棧功能。