服務計算技術——RESTful服務設計與開發

劉士軍 潘麗 崔立真

  • 出版商: 清華大學
  • 出版日期: 2024-01-01
  • 定價: $354
  • 售價: 8.5$301
  • 語言: 簡體中文
  • ISBN: 7302644284
  • ISBN-13: 9787302644286
  • 相關分類: Web API
  • 下單後立即進貨 (約4週~6週)

  • 服務計算技術——RESTful服務設計與開發-preview-1
  • 服務計算技術——RESTful服務設計與開發-preview-2
  • 服務計算技術——RESTful服務設計與開發-preview-3
服務計算技術——RESTful服務設計與開發-preview-1

買這商品的人也買了...

商品描述

服務計算是分佈式系統互操作的關鍵技術,其旨在為處理大量數據提供跨平臺、跨語言、鬆散耦合和靈活整合的能力。隨著微服務架構、雲邊端服務架構、移動應用服務等新型軟件服務場景的拓展,以及服務計算技術與大數據、區塊鏈、人工智能等技術的加速融合,服務計算越來越廣泛地融入軟件開發過程。 Web服務開發,尤其是RESTful模式的Web服務開發,需要開發者對Web服務運行原理、面向資源架構風格和服務設計開發技術規範有系統的理解和掌握。本書主要介紹服務計算的發展、REST架構風格、面向資源架構的設計原理、RESTful服務的設計方法和步驟、RESTful服務開發技術、OpenAPI規範和微服務架構等內容,幫助這部分開發者理解和掌握相關技術。 本書內容深入淺出,並結合案例實踐,適合電腦科學與技術、軟件工程相關專業的學生和工程技術人員學習、參考。

目錄大綱

目錄

第1章服務計算: Web新時代的計算1

1.1Web時代的變革1

1.2服務2

1.3服務計算的發展4

1.4API時代的到來10

本章習題16

第2章Web服務技術方案: 從RPC到REST17

2.1探尋Web運行的終極原理17

2.2從RPC到ROA24

2.3ROA與RPC的比較31

2.4RESTful服務的優勢32

本章習題34

第3章資源和表述36

3.1資源的本質36

3.2表述的本質38

3.3超媒體與HATEOAS41

3.4HTTP的語義46

3.5操作資源52

本章習題53

第4章認識RESTful資源: 以地圖服務為例54

4.1基於位置的服務54

4.2認識資源型的服務56

4.3用地圖API寫最簡單的地圖應用61

本章習題71第5章領域驅動的服務設計72

5.1領域模型與領域驅動設計72

5.2理解領域、識別資源、劃分服務74

5.3理解行為、設計表述78

5.4客戶端與服務端的設計81

5.5REST成熟度模型84

本章習題88

第6章設計只讀的資源服務89

6.1資源分析與設計89

6.2設計資源表述95

6.3把資源互相鏈接起來100

6.4規劃服務交互的響應102

本章習題104

第7章REST安全性和與用戶有關的資源設計105

7.1REST安全性設計105

7.2用戶也是一種資源114

7.3設計用戶資源114

本章習題118

第8章設計可讀寫的資源服務119

8.1資源分析與設計119

8.2暴露一個統一接口的子集121

8.3設計來自客戶端的表述121

8.4設計發給客戶端的表述122

8.5將多種資源整合到一起123

8.6規劃服務交互的響應125

本章習題127

第9章設計更好的服務: 咖啡店的啟發128

9.1一個典型的服務系統——咖啡店128

9.2統一標準的咖啡需要統一標準的集成129

9.3RESTful服務設計方案131

9.4咖啡店案例的啟發137

本章習題139

第10章RESTful服務開發(Jersey)140

10.1RESTful服務開發的範疇140

10.2JAXRS與Jersey142

10.3使用IDEA搭建基於Jersey的RESTful服務148

10.4最簡單的RESTful服務——HelloService149

10.5在項目中增加JSON格式支持152

10.6模擬數據CRUD操作158

10.7真正的數據庫CRUD操作161

10.8文件操作176

10.9打包並部署服務183

本章習題185

第11章開發RESTful服務客戶端186

11.1Jersey Client開發客戶端186

11.2Java客戶端案例188

11.3微信小程序調用RESTful服務197

本章習題202

第12章OpenAPI規範與設計203

12.1RESTful API的工作原理203

12.2OpenAPI規範204

12.3OpenAPI工具Swagger211

12.4在項目中引入Springfox Swagger212

本章習題223

第13章微服務架構簡介224

13.1微服務架構模式224

13.2微服務架構的特性與挑戰225

13.3Spring Cloud Netflix體系227

13.4Spring Cloud微服務架構233

13.5微服務架構案例234

本章習題238

第14章智能藥品櫃數據服務開發案例239

14.1理解智能藥品櫃業務場景239

14.2設計智能藥品櫃數據服務244

14.3開發智能藥品櫃數據服務247

附錄ASpring構建超媒體驅動的RESTful Web服務案例250

附錄BHTTP協議響應代碼255

附錄C百度地圖資源訪問程序源碼259

附錄DSwagger Petstore OpenAPI263