search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

使用Spring構建REST服務丨課程推薦

REST 已經迅速成為網路上構建 Web 服務的實際標準,因為他們易於構建並易於使用。

關於 REST 如何適應微服務的世界,有一個更大的討論,在這裡,我們只討論如何構建 RESTful 的服務。

為什麼選擇 REST?REST 在實踐中,藉助 Martin Fowler 的措辭可以解釋的更為恰當,「網路是一個有效的可擴展的分散式系統。我們可以從中獲得更容易構建系統的想法。我認為這是一個很好的理由:REST 包含了網路本身的規則,並且擁抱其架構、優勢和所有功能。」

這樣做的好處主要是像所有來自於免費的 HTTP 作為平台本身。應用安全性(加密和認證)是已知存在的解決方案,協議中內置緩存,並通過 DNS 服務路由。因此,它是一個彈性的,獲得廣泛認可的系統,有無處不在的支持。

然而,無處不在的 REST 本身並不是標準,是一種對 HTTP 協議的方法、風格和約束。它實現方式可能有所不同,作為 API 消費者,這可能是一個令人沮喪的經驗。

LeonardRichardson 博士創建了一個成熟度模型,解釋各種級別 RESTful 原則、進行分級並對分級進行打分,這個分級描述了從 0 級開始的 4 個級別。

級別 0:the Swamp of POX,在這一級,我們只使用 HTTP 作為傳輸。你可以將 SOAP 稱為 0 級技術。它使用 HTTP,但只作為傳輸。值得一提的是,你也可以在沒有 HTTP 的 JMS 之上使用 SOAP。因此,SOAP 不是 RESTful 的。

級別 1:Resources。在這個級別,伺服器可能會使用 HTTP URI 來區分系統中的名詞或者實體,例如,你可以將請求路由到 /customers,/users 等。XML-RPC 是 Level1 技術的一個示例:它使用 HTTP,它可以使用 URI 來區分端點。最終,XML-RPC 不是 RESTful:它使用 HTTP 作為其他東西的傳輸(遠程過程調用)。

級別 2:HTTP Verbs。這是你想要的級別,也是我們開始旅程的地方,如果你對 Spring MVC 犯了一些錯誤,您有可能還會停留在這個階段。Web 服務使用不同的 HTTP 方法來進行不同的操作,並且使用 HTTP 狀態碼來表示不同的結果。如 HTTP GET 方法來獲取資源,HTTP DELETE 方法來刪除資源。

級別 3:Hypermedia Controls。最後一級是我們將努力去往的地方。Hypermedia(超媒體)使用 HATEOAS(The Hypermedia As The Engine Of Application Statue)。在資源的表達中包含了鏈接信息。客戶端可以根據鏈接來發現可以執行的動作。

那我們的課程可以學習到什麼?

課程大綱一、基礎篇

Spring REST 實戰 - 基礎篇將以示例項目為入手,介紹 Spring REST 基礎及 HTTP 協議、API 設計技巧和 API 安全基礎相關知識和實踐。

第一部分:Spring REST 基礎

  • REST API 基礎

  • 快速開始你的項目

  • 「用戶中心服務」項目

  • 項目設置

第二部分:REST 和 HTTP 協議

  • HTTP 狀態碼

  • 輸入數據的基礎驗證

  • 設計良好的 URI

  • 響應數據格式支持

  • HTTP 請求的生命周期

第三部分:REST 安全基礎

  • Spring Security 使用

  • 全局授權與方法級授權

  • Cookies 和會話

  • HTTPS 協議與證書示例

  • 角色與許可權設計

二、中級篇

第四部分:使用 AngularJS 消費 REST API

  • 前端項目及 AngularJS REST 調用

  • 跨域資源共享 CORS

  • AngluarJS 與 OAuth2、Tokens

第五部分:測試 REST API

  • 第一次 API 測試

  • 構建 API 客戶端

  • HTTP 語義測試

  • 構建通用 Client

  • 基於 API 約定測試

第六部分:API 安全進階

  • OAuth2 簡介

  • 使用 Spring Security 實現 OAuth2

  • Tokens、OAuth2 與 JWT

  • 刷新 Token

  • 前端實現 OAuth2

三、高級篇

第七部分:API 文檔管理與版本管理

  • 使用 Swagger 進行 API 文檔管理

  • HATEOAS 基礎

  • Spring HATEOAS 使用

  • API 演變

第八部分:API 監控與度量統計

  • Spring Boot 的監控基礎

  • API 自定義度量統計

  • 使用 JMX 進行監控

  • 使用 HTTP 進行結果展示

  • 生產環境下常用監控工具

第九部分:API 的持續集成與持續發布

  • 搭建 Jenkins,開始你的第一個 Job

  • 從頭開始做一個 Jenkins Pipeline

  • API 的遠程部署

  • 從持續集成到持續發布

第十部分:API 高級技巧

  • 簡單的 API 限流實現

  • Spring REST API 的二進位數據格式

  • 非同步 API 請求

上課形式

學習形式:錄播+直播答疑

學習環境:專屬學習 QQ 群 + 在線直播教室

課程觀看有效期:1 年

欲知更多詳細課程信息,掃描下圖 「 二維碼 」添加小助手諮詢

閱讀原文,了解更多!



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦