內容簡介
《MongoDB+Express+Angular+Node.js全棧開發實戰派》含MongoDB、Express、Angular、NG-ZORRO、ngx-markdown、basic-auth和NGINX等在內的MEAN架構技術點,58個實例,把知識都用實例來學習。
圖書目錄
第1篇 初識MEAN
第1章 MEAN架構概述 2
1.1 MEAN架構核心技術棧的組成 2
1.2 MEAN架構周邊技術棧的組成 4
1.3 MEAN架構的優勢 5
1.4 開發工具的選擇 8
第2篇 Node.js——全棧開發平台
第2章 Node.js基礎 10
2.1 Node.js簡介 10
2.2 Node.js的特點 13
2.3 安裝Node.js 17
2.4 第1個Node.js套用 18
第3章 Node.js模組——大型項目管理之道 20
3.1 理解模組化機制 20
3.2 使用NPM管理模組 26
3.3 Node.js的核心模組 29
第4章 Node.js測試 31
4.1 嚴格模式和遺留模式 31
4.2 【實例3】斷言的使用 32
4.3 了解AssertionError 33
4.4 【實例4】使用deepStrictEqual 34
第5章 Node.js緩衝區——高性能I/O處理的秘訣 38
5.1 了解Buffer類 38
5.2 創建緩衝區 40
5.3 切分緩衝區 43
5.4 連結緩衝區 45
5.5 比較緩衝區 46
5.6 緩衝區編/解碼 46
第6章 Node.js事件處理 50
6.1 理解事件和回調 50
6.2 事件發射器 52
6.3 事件類型 54
6.4 事件的操作 57
第7章 Node.js檔案處理 63
7.1 了解fs模組 63
7.2 處理檔案路徑 66
7.3 打開檔案 69
7.4 讀取檔案 72
7.5 寫入檔案 75
第8章 Node.js HTTP編程 80
8.1 創建HTTP伺服器 80
8.2 處理HTTP的常用操作 83
8.3 請求對象和回響對象 84
8.4 REST概述 91
8.5 成熟度模型 94
8.6 【實例18】構建REST服務的例子100
第3篇 Express——Web伺服器
第9章 Express基礎 110
9.1 安裝Express 110
9.2 【實例19】編寫“Hello World”套用 112
9.3 【實例20】運行“Hello World”套用 112
第10章 Express路由——頁面的導航員 114
10.1 路由方法 114
10.2 路由路徑 115
10.3 路由參數 117
10.4 路由處理器 118
10.5 回響方法 119
10.6 【實例28】基於Express構建REST API 120
10.7 測試Express的REST API 122
第11章 Express錯誤處理器 125
11.1 捕獲錯誤 125
11.2 默認錯誤處理器 127
11.3 自定義錯誤處理器 128
第4篇 MongoDB篇——NoSQL資料庫
第12章 MongoDB基礎 132
12.1 MongoDB簡介 132
12.2 安裝MongoDB 133
12.3 啟動MongoDB服務 134
12.4 連結MongoDB伺服器 135
第13章 MongoDB的常用操作 136
13.1 顯示已有的資料庫 136
13.2 創建、使用資料庫 136
13.3 插入文檔 137
13.4 查詢文檔 139
13.5 修改文檔 140
13.6 刪除文檔 142
第14章 【實例31】使用Node.js操作MongoDB 144
14.1 安裝mongodb模組144
14.2 訪問MongoDB 145
14.3 運行套用 146
第15章 mongodb模組的綜合套用 148
15.1 【實例32】建立連線 148
15.2 【實例33】插入文檔 149
15.3 【實例34】查找文檔 150
15.4 修改文檔 152
15.5 刪除文檔 158
第5篇 Angular——前端套用開發平台
第16章 Angular基礎 162
16.1 常見的UI編程框架 162
16.2 Angular的安裝 165
16.3 Angular CLI的常用操作 166
16.3.8 自動化測試 167
16.4 Angular架構概覽 168
16.5 【實例39】創建第1個Angular套用 171
第17章 Angular模組——大型前端套用管理之道 178
17.1 模組概述 178
17.2 引導啟動 180
17.3 常用模組 182
17.4 特性模組 183
17.5 入口組件 185
第18章 Angular組件——獨立的開發單元 187
18.1 數據展示 187
18.2 生命周期 190
18.3 組件的互動方式 197
18.4 樣式 210
第19章 Angular模板和數據綁定 216
19.1 模板表達式 216
19.2 模板語句 219
19.3 數據綁定 220
19.4 屬性綁定 221
19.5 事件綁定 222
第20章 Angular指令——組件行為改變器 225
20.1 指令類型 225
20.2 屬性型指令 225
20.3 結構型指令 232
第21章 Angular服務與依賴注入 238
21.1 初識依賴注入 238
21.2 在Angular中實現依賴注入 239
21.3 多級依賴注入 252
第22章 Angular路由 254
22.1 配置路由 254
22.2 理解路由器連結 257
22.3 路由事件 258
22.4 重定向URL 258
22.5 【實例57】一個路由器的例子 259
第23章 Angular回響式編程 266
23.1 了解Observable機制 266
23.2 了解RxJS技術273
23.3 了解Angular中的Observable 277
第24章 Angular HTTP客戶端 282
24.1 初識HttpClient 282
24.2 認識網路資源 282
24.3 【實例58】獲取天氣數據 284
24.4 錯誤處理 290
第6篇 綜合套用——構建一個完整的網際網路套用
第25章 總體設計 294
25.1 套用概述 294
25.2 模型設計 295
25.3 接口設計 296
25.4 許可權管理 296
第26章 客戶端套用 298
26.1 UI設計 298
26.2 實現UI原型 299
26.3 實現路由器 309
第27章 伺服器端套用 312
27.1 初始化伺服器端套用 312
27.2 初步實現用戶登錄認證功能 314
27.3 實現新聞編輯器 320
27.4 實現新聞列表展示 328
27.5 實現新聞詳情展示 331
27.6 實現認證信息的存儲及讀取 335
27.7 總結 339
第28章 用NGINX實現高可用 340
28.1 NGINX概述 340
28.2 部署客戶端套用 345
28.3 實現負載均衡及高可用 347
參考文獻 353
作者簡介
柳偉衛,網名老衛、waylau
一線網際網路公司架構師,CSDN、開源中國、雲棲社區等社區技術專家,慕課網講師。
具有多年軟體開發管理及系統架構經驗。負責過多個省、國家級分散式系統的設計與研發,參與了多個大型項目微服務架構的技術改造。
長期躍於各大開源社區,為開源社區編寫了30餘本技術教程,廣受網友好評。