內容簡介
ASP.NET Core 6推出的Minimal API應用承載方式,它讓程式變得異常簡潔,所以本書所有的實例將全部採用這種設計模式。
本書分為上下兩冊:
「第 1 篇 初識程式設計(第 1 章)」列舉一系列極簡的實例為讀者提供基本的程式設計體驗
「第 2 篇 基礎框架(第 2~13 章)」主要介紹了一系列支撐 ASP.NET Core 的基礎框架
「第 3 篇 承載系統(第 14~17章)」主要介紹了 ASP.NET Core 應用的承載流程
「第 4 篇 伺服器概述(第 18 章)」列舉一系列常見的伺服器類型並對它們進行比較
「第 5 篇 中介軟體(第 19~30 章)」系統地介紹一系列預定義的中介軟體
四大重點
• 剖析支撐 ASP.NET Core 的基礎框架(依賴注入、組態選項、診斷日誌、物件池、資料保護等)。
• 介紹以 IHost/IHostBuilder 為核心的服務承載系統,該系統如何實現 ASP.NET Core 應用承載,以及 Minimal API 背後的邏輯。
• 梳理「管道」對請求進行處理的原理,以及在應用承載過程中的建構流程。
• 系統、深入地介紹預定義的「中介軟體」。
本書分為上下兩冊:
「第 1 篇 初識程式設計(第 1 章)」列舉一系列極簡的實例為讀者提供基本的程式設計體驗
「第 2 篇 基礎框架(第 2~13 章)」主要介紹了一系列支撐 ASP.NET Core 的基礎框架
「第 3 篇 承載系統(第 14~17章)」主要介紹了 ASP.NET Core 應用的承載流程
「第 4 篇 伺服器概述(第 18 章)」列舉一系列常見的伺服器類型並對它們進行比較
「第 5 篇 中介軟體(第 19~30 章)」系統地介紹一系列預定義的中介軟體
四大重點
• 剖析支撐 ASP.NET Core 的基礎框架(依賴注入、組態選項、診斷日誌、物件池、資料保護等)。
• 介紹以 IHost/IHostBuilder 為核心的服務承載系統,該系統如何實現 ASP.NET Core 應用承載,以及 Minimal API 背後的邏輯。
• 梳理「管道」對請求進行處理的原理,以及在應用承載過程中的建構流程。
• 系統、深入地介紹預定義的「中介軟體」。
作者簡介
蔣金楠
網名Artech,高級軟體顧問。
微軟6任 MVP(Solutions Architecture、Connected System 與 Microsoft Integration)。
中國 .NET 技術領域資深專家,著有《WCF全面解析》、《ASP.NET MVC 5框架揭秘》等多部領域暢銷著作。
對.NET Framework、C#、ASP.NET、SQL Server、設計模式、軟體架構,以及主流開源框架有著深入研究,同時對.NET Remoting、MSMQ通訊技術有深入的理解。
網名Artech,高級軟體顧問。
微軟6任 MVP(Solutions Architecture、Connected System 與 Microsoft Integration)。
中國 .NET 技術領域資深專家,著有《WCF全面解析》、《ASP.NET MVC 5框架揭秘》等多部領域暢銷著作。
對.NET Framework、C#、ASP.NET、SQL Server、設計模式、軟體架構,以及主流開源框架有著深入研究,同時對.NET Remoting、MSMQ通訊技術有深入的理解。
內容目錄
第1~2篇為上冊介紹篇幅
第1篇 初識程式設計
第1章 程式設計體驗
1.1 控制台程式
1.2 ASP.NET應用程式
1.3 MVC
1.4 gRPC
1.5 Dapr
第2 篇 基礎框架
第2 章 依賴注入(上)
2.1 控制反轉
2.2 IoC 模式
2.3 依賴注入
2.4 一個簡易版的依賴注入容器
第3 章 依賴注入(下)
3.1 利用容器提供服務
3.2 服務註冊
3.3 服務的消費
3.4 擴展
第4章 檔案系統
4.1 抽象的檔案系統
4.2 檔案與目錄
4.3 實體檔案系統
4.4 內嵌檔案系統
第5章 組態選項(上)
5.1 讀取組態資訊
5.2 組態模型
5.3 組態繫結
5.4 組態的同步
5.5 多樣性的組態來源
第6 章 組態選項(下)
6.1 Options 模式
6.2 Options 模型
6.3 依賴注入
第7章 診斷日誌(上)
7.1 各種診斷日誌形式
7.2 Debugger偵錯日誌
7.3 TraceSource追蹤日誌
7.4 EventSource事件日誌
7.5 DiagnosticSource診斷日誌
第8章 診斷日誌(中)
8.1 統一日誌設計模式
8.2 日誌模型詳解
8.3 日誌範圍
8.4 依賴注入
第9 章 診斷日誌(下)
9.1 控制台
9.2 偵錯器
9.3 TraceSource 日誌
9.4 EventSource 日誌
第10 章 物件池
10.1 利用物件池重用物件
10.2 池化物件管理
10.3 擴展應用
第11章 快取
11.1 將資料快取起來
11.2 本地記憶體快取
11.3 分散式快取
第12章 HTTP呼叫
12.1 HttpClient的工廠
12.2 HttpMessageHandler管道
12.3 HttpClient 的建構
12.4 依賴注入
第13 章 資料保護
13.1 加密與雜湊
13.2 加密模型
13.3 金鑰管理
13.4 依賴注入
附錄A
第3~5篇為下冊介紹篇幅
第3篇 承載系統
第14章 服務承載
14.1 服務承載
14.2 服務承載模型
14.3 服務承載流程
第15章 應用程式承載(上)
15.1 管道式的請求處理
15.2 依賴注入
15.3 組態
15.4 承載環境
第16 章 應用程式承載(中)
16.1 中介軟體委託鏈
16.2 伺服器
16.3 承載服務
第17 章 應用程式承載(下)
17.1 共用上下文物件
17.2 IServer + IHttpApplication
17.3 中介軟體委託鏈
17.4 應用程式的承載
17.5 Minimal API
第4篇 伺服器概述
第18章 伺服器
18.1 自訂伺服器
18.2 KestrelServer
18.3 HTTP.SYS
18.4 IIS
第5篇 中介軟體
第19 章 靜態檔案
19.1 建置檔案伺服器
19.2 處理檔案請求
19.3 處理目錄請求
第20 章 路由
20.1 路由映射
20.2 路由分發
20.3 路由約束
第21章 異常處理
21.1 呈現錯誤訊息
21.2 開發者異常頁面
21.3 異常處理器
21.4 回應狀態碼頁面
第22章 回應快取
22.1 快取回應內容
22.2 HTTP-Cache
22.3 中介軟體
第23 章 工作階段
23.1 利用工作階段保留「語境」
23.2 工作階段狀態的讀/ 寫
23.3 工作階段中介軟體
第24 章 HTTPS 策略
24.1 HTTPS 終節點的切換
24.2 HTTPS 重定向
24.3 HSTS
第25 章 重定向
25.1 基於規則的重定向
25.2 重定向中介軟體
25.3 預定義規則
第26章 限流
26.1 控制並行量
26.2 並行限制中介軟體
26.3 等待佇列策略
第27章 認證
27.1 認證、登錄與登出
27.2 身份與使用者
27.3 認證模型
27.4 Cookie 認證方案
第28 章 授權
28.1 基於「角色」的授權
28.2 基於「要求」的授權
28.3 基於「策略」的授權
28.4 授權與路由
第29 章 跨來源資源共享
29.1 處理跨來源資源
29.2 CORS 規範
29.3 CORS中介軟體
第30章 健康檢查
30.1 檢查應用程式的健康狀況
30.2 設計與實作
30.3 發佈健康報告
附錄B
第1篇 初識程式設計
第1章 程式設計體驗
1.1 控制台程式
1.2 ASP.NET應用程式
1.3 MVC
1.4 gRPC
1.5 Dapr
第2 篇 基礎框架
第2 章 依賴注入(上)
2.1 控制反轉
2.2 IoC 模式
2.3 依賴注入
2.4 一個簡易版的依賴注入容器
第3 章 依賴注入(下)
3.1 利用容器提供服務
3.2 服務註冊
3.3 服務的消費
3.4 擴展
第4章 檔案系統
4.1 抽象的檔案系統
4.2 檔案與目錄
4.3 實體檔案系統
4.4 內嵌檔案系統
第5章 組態選項(上)
5.1 讀取組態資訊
5.2 組態模型
5.3 組態繫結
5.4 組態的同步
5.5 多樣性的組態來源
第6 章 組態選項(下)
6.1 Options 模式
6.2 Options 模型
6.3 依賴注入
第7章 診斷日誌(上)
7.1 各種診斷日誌形式
7.2 Debugger偵錯日誌
7.3 TraceSource追蹤日誌
7.4 EventSource事件日誌
7.5 DiagnosticSource診斷日誌
第8章 診斷日誌(中)
8.1 統一日誌設計模式
8.2 日誌模型詳解
8.3 日誌範圍
8.4 依賴注入
第9 章 診斷日誌(下)
9.1 控制台
9.2 偵錯器
9.3 TraceSource 日誌
9.4 EventSource 日誌
第10 章 物件池
10.1 利用物件池重用物件
10.2 池化物件管理
10.3 擴展應用
第11章 快取
11.1 將資料快取起來
11.2 本地記憶體快取
11.3 分散式快取
第12章 HTTP呼叫
12.1 HttpClient的工廠
12.2 HttpMessageHandler管道
12.3 HttpClient 的建構
12.4 依賴注入
第13 章 資料保護
13.1 加密與雜湊
13.2 加密模型
13.3 金鑰管理
13.4 依賴注入
附錄A
第3~5篇為下冊介紹篇幅
第3篇 承載系統
第14章 服務承載
14.1 服務承載
14.2 服務承載模型
14.3 服務承載流程
第15章 應用程式承載(上)
15.1 管道式的請求處理
15.2 依賴注入
15.3 組態
15.4 承載環境
第16 章 應用程式承載(中)
16.1 中介軟體委託鏈
16.2 伺服器
16.3 承載服務
第17 章 應用程式承載(下)
17.1 共用上下文物件
17.2 IServer + IHttpApplication
17.3 中介軟體委託鏈
17.4 應用程式的承載
17.5 Minimal API
第4篇 伺服器概述
第18章 伺服器
18.1 自訂伺服器
18.2 KestrelServer
18.3 HTTP.SYS
18.4 IIS
第5篇 中介軟體
第19 章 靜態檔案
19.1 建置檔案伺服器
19.2 處理檔案請求
19.3 處理目錄請求
第20 章 路由
20.1 路由映射
20.2 路由分發
20.3 路由約束
第21章 異常處理
21.1 呈現錯誤訊息
21.2 開發者異常頁面
21.3 異常處理器
21.4 回應狀態碼頁面
第22章 回應快取
22.1 快取回應內容
22.2 HTTP-Cache
22.3 中介軟體
第23 章 工作階段
23.1 利用工作階段保留「語境」
23.2 工作階段狀態的讀/ 寫
23.3 工作階段中介軟體
第24 章 HTTPS 策略
24.1 HTTPS 終節點的切換
24.2 HTTPS 重定向
24.3 HSTS
第25 章 重定向
25.1 基於規則的重定向
25.2 重定向中介軟體
25.3 預定義規則
第26章 限流
26.1 控制並行量
26.2 並行限制中介軟體
26.3 等待佇列策略
第27章 認證
27.1 認證、登錄與登出
27.2 身份與使用者
27.3 認證模型
27.4 Cookie 認證方案
第28 章 授權
28.1 基於「角色」的授權
28.2 基於「要求」的授權
28.3 基於「策略」的授權
28.4 授權與路由
第29 章 跨來源資源共享
29.1 處理跨來源資源
29.2 CORS 規範
29.3 CORS中介軟體
第30章 健康檢查
30.1 檢查應用程式的健康狀況
30.2 設計與實作
30.3 發佈健康報告
附錄B
ISBN: 9786263333437