狼書(卷2):Node·js Web套用開發

狼書(卷2):Node·js Web套用開發

《狼書(卷2):Node.js Web套用開發》是2020年1月電子工業出版社出版的圖書,作者是狼叔。

基本介紹

  • 中文名:狼書(卷2):Node·js Web套用開發
  • 作者:狼叔
  • ISBN:9787121359064
  • 頁數:440頁
  • 定價:99元
  • 出版社:電子工業出版社
  • 出版時間:2020年1月
  • 開本:16開
內容簡介,圖書目錄,

內容簡介

Node.js開發簡單,性能極好,一經發布便成了明星級項目。隨著大前端領域的蓬勃發展,跨平台開發、API構建、Web套用開發等場景愈加常見,Node.js也成為大前端開發的必備“神器”。本書主要講解Node.js Web套用開發涉及的HTTP基礎知識、常用開發框架、源碼原理、資料庫和項目實戰,旨在向讀者展示如何通過Node.js和Koa編寫出更具前端特色的Web套用。本書還講解了Koa中的核心中間件原理,展望了未來Web套用開發的發展方向。基於Node.js開發Web套用具有上手簡單、開發快速、執行高效等特點,非常適合快速疊代,因此各位大前端領域及後端領域的測試、運維、軟體開發從業者都可以閱讀本書。

圖書目錄

目錄
第1章 下一代Web框架Koa 1
1.1 Koa簡介 1
1.1.1 套用場景 2
1.1.2 開發要點 3
1.1.3 Koa入門 4
1.1.4 為什麼選擇Koa 7
1.2 Koa腳手架 8
1.2.1 安裝Koa生成器 9
1.2.2 創建Hello world 10
1.2.3 目錄解析 11
1.2.4 Koa v2中間件的寫法 20
1.2.5 路由 21
1.2.6 切換視圖模板引擎 25
1.2.7 Koa代碼調試 26
1.3 Node.js Web框架演進 29
1.3.1 Node.js http模組 29
1.3.2 最早的Connect 29
1.3.3 曾經扛鼎的Express框架 33
1.3.4 新興Web開發框架Koa 35
1.3.5 Express和Koa大比拼 38
1.4 測試 38
1.4.1 Node.js測試框架 39
1.4.2 AVA測試框架 39
1.4.3 測試用例與斷言 40
1.4.4 實踐 41
1.4.5 更多內容 44
1.5 本章小結 48
第2章 Koa的核心擴展機制:中間件 49
2.1 中間件 49
2.1.1 什麼是中間件 49
2.1.2 上下文對象 57
2.1.3 回形針一樣的中間件 66
2.1.4 常用中間件 88
2.2 路由 89
2.2.1 koa-router 89
2.2.2 路由詳解 93
2.2.3 將路由放到目錄里 98
2.3 視圖 101
2.3.1 koa-views 101
2.3.2 默認模板引擎Pug 102
2.3.3 views目錄模板說明 102
2.3.4 consolidate.js 104
2.4 靜態服務模組 104
2.4.1 koa-static 105
2.4.2 koa-send 106
2.4.3 koa-mount 108
2.4.4 koa-serve-static 108
2.5 本章小結 109
第3章 HTTP必知必會 110
3.1 請求回響模型 110
3.1.1 請求 112
3.1.2 回響 112
3.1.3 核心要點 114
3.2 HTTPS 127
3.2.1 生成證書 129
3.2.2 驗證與自動續約 130
3.2.3 Node.js伺服器HTTPS配置 131
3.2.4 Nginx HTTPS配置 132
3.2.5 Nginx HTTPS反向代理配置 134
3.3 代理 136
3.3.1 協定支持 136
3.3.2 mini-proxy 140
3.3.3 hiproxy 146
3.4 本章小結 152
第4章 Koa練習 153
4.1 基礎知識 153
4.1.1 地址 153
4.1.2 HTTP頭部 156
4.1.3 HTTP動詞 161
4.1.4 HTTP狀態碼 163
4.1.5 Cookie 164
4.2 獲取不同參數的3種方法 165
4.2.1 獲取具名參數 166
4.2.2 解析請求體 166
4.2.3 獲取查詢字元串 167
4.3 body解析 168
4.3.1 模組依賴 168
4.3.2 原理 168
4.3.3 常見的POST 169
4.4 請求的幾種方式 175
4.4.1 表單 176
4.4.2 AJAX 176
4.4.3 命令行 177
4.4.4 HTTP模組 178
4.4.5 工具軟體 183
4.4.6 測試 183
4.5 API開發 185
4.5.1 API的簡單寫法 185
4.5.2 回響處理 189
4.5.3 RESTful API 190
4.5.4 API訪問鑒權 192
4.5.5 OAuth鑒權 194
4.6 常用中間件 195
4.6.1 會話 196
4.6.2 ETag 198
4.6.3 驗證碼 199
4.6.4 限制訪問頻率 201
4.7 本章小結 203
第5章 資料庫基礎 204
5.1 入門 204
5.1.1 選擇哪個資料庫 204
5.1.2 了解MVC里的模型 206
5.1.3 模型的代碼 207
5.1.4 代碼組織結構 209
5.2 MongoDB的安裝與部署 210
5.2.1 安裝與部署的方式 211
5.2.2 在macOS上安裝 212
5.2.3 在Ubuntu上安裝 212
5.2.4 在Windows上安裝 213
5.2.5 更好的啟動方式 213
5.3 Mongoose基礎 214
5.3.1 簡介 214
5.3.2 入門 215
5.3.3 Hello Mongoose 218
5.3.4 核心概念 221
5.3.5 增刪改查操作 223
5.3.6 Schema的類型 232
5.4 Mongoose進階 234
5.4.1 模型擴展 234
5.4.2 虛擬屬性 237
5.4.3 回調鉤子 240
5.4.4 外掛程式機制 244
5.5 本章小結 253
第6章 資料庫進階 254
6.1 分頁 254
6.1.1 使用skip和limit實現分頁 255
6.1.2 使用find和limit實現分頁 256
6.1.3 ObjectID的組成 257
6.1.4 客戶端生成ObjectID 259
6.2 關聯查詢 259
6.2.1 聚合函式 260
6.2.2 聚合管道 261
6.2.3 MapReduce 263
6.2.4 關聯關係 264
6.2.5 aggregation 266
6.3 事務 270
6.3.1 二階段提交法 270
6.3.2 回滾操作 273
6.4 性能調優 274
6.4.1 profile 275
6.4.2 explain 275
6.4.3 索引最佳化 276
6.4.4 MongoDB的連線問題 282
6.4.5 MongooseDao 289
6.4.6 異步流程控制 296
6.5 本章小結 303
第7章 前端視圖模板 304
7.1 靜態伺服器 304
7.1.1 public目錄 304
7.1.2 實現原理 306
7.1.3 靜態服務 307
7.1.4 預處理中間件 314
7.2 使用模板引擎進行動態渲染 316
7.2.1 模板引擎原理 316
7.2.2 模板引擎規則 324
7.2.3 Vue 333
7.3 Webpack 342
7.3.1 解決痛點 343
7.3.2 模組規範 344
7.3.3 模組載入器 345
7.3.4 模組打包器 345
7.3.5 Webpack詳解 346
7.4 前後端分離 357
7.5 前端渲染 357
7.5.1 客戶端渲染 357
7.5.2 伺服器端渲染 358
7.5.3 React伺服器端渲染 360
7.5.4 Serverless時代的渲染層 363
7.6 本章小結 365
第8章 項目實戰 366
8.1 入門 366
8.1.1 Docker 366
8.1.2 Docker Compose 369
8.1.3 環境變數 370
8.1.4 啟動伺服器 373
8.2 Egg.js框架 373
8.2.1 使用腳手架 374
8.2.2 目錄說明 375
8.2.3 啟動伺服器 379
8.2.4 代碼結構 381
8.2.5 內置對象 384
8.2.6 代碼調試 386
8.2.7 外掛程式擴展機制 387
8.3 egg-cnode源碼 388
8.3.1 目錄約定 388
8.3.2 app目錄 390
8.3.3 資料庫連線 391
8.3.4 模型定義 392
8.3.5 從Controller到Service 393
8.3.6 視圖渲染 396
8.3.7 數據模型 399
8.3.8 API開發 400
8.3.9 測試 403
8.3.10 鑒權 404
8.3.11 後台管理 412
8.3.12 參數校驗 412
8.4 本章小結 413

相關詞條

熱門詞條

聯絡我們