Node.js 全程實例
內容描述
本書精選適用於生產環境的Node.js10代碼實例,幫助讀者從零開始掌握Node.js服務器編程。全書內容翔實、重點突出、通俗易懂,涵蓋Node.js程序開發的方方面面。 全書共分為10章,內容包括:Node.js10控制台輸出、文件管理、進程與異步I/O管理、進程通信、緩沖區Buffer管理、網絡管理、Web管理、MySQL與MongoDB數據庫管理和常用工具Util開發等方面的內容。 本書是掌握Node.js10編程非常好的圖書,全書內容簡潔、代碼精練、實例豐富,能夠幫助初學者快速掌握Node.js開發。同時,對於設計人員提高Web服務器端腳本語言開發的技術水平有非常積極的指導作用。
目錄大綱
目 錄
第1章 Node.js環境及工具 1
1.1 通過安裝包安裝Node 1
1.2 通過二進制方式安裝Node 4
1.3 借助NPM包管理器升級Node 6
1.4 Node.js開發工具Sublime Text配置 6
1.5 Node.js開發平台WebStorm配置 10
第2章 Node.js控制台輸出 14
2.1 Node.js中的Console概述 14
2.2 控制台日誌信息輸出 14
2.3 輸出JSON數據交換格式 15
2.4 輸出邏輯運算符結果 16
2.5 格式化參數輸出 17
2.6 輸出錯誤和警告 18
2.7 輸出位置重定向 19
2.8 輸出對象的屬性和方法 20
2.9 輸出控制鍵 21
2.10 從控制台讀取用戶輸入 23
2.11 在控制台使用斷言工具 25
2.12 在控制台輸出表格 26
第3章 Node.js文件管理 27
3.1 文件管理概述 27
3.2 打開與關閉文件 27
3.3 創建與刪除文件硬鏈接 31
3.4 創建文件符號鏈接 35
3.5 讀取文件符號鏈接 37
3.6 截取文件內容 39
3.7 修改文件長度 41
3.8 獲取文件信息 43
3.9 重命名文件 44
3.10 相對路徑轉絕對路徑 46
3.11 創建和刪除目錄 47
3.12 讀取文件目錄 50
3.13 讀取文件內容 51
3.14 根據文件描述符讀取文件內容 53
3.15 寫入文件內容 55
3.16 根據文件描述符寫入文件內容 56
3.17 追加寫入文件內容 59
3.18 監控文件 61
第4章 進程與異步管理 63
4.1 進程與異步概述 63
4.2 獲取程序當前目錄 63
4.3 改變當前目錄 64
4.4 獲取系統相關信息 65
4.5 實現標準輸出流 70
4.6 實現標準錯誤流 72
4.7 實現標準輸入流 73
4.8 Process模塊的異步方法 74
4.9 異步方法基礎 76
4.10 Async串行流程 77
4.11 Async瀑布模式流程控制 80
4.12 Async並行流程控制 82
4.13 Async限制性並行流程控制 84
4.14 Async循環流程控制 85
4.15 Async隊列流程控制 89
第5章 進程通信 92
5.1 進程通信概述 92
5.2 創建子進程 92
5.3 綁定係統事件 95
5.4 綁定錯誤事件 97
5.5 創建子進程查看用戶目錄 99
5.6 查看物理內存使用狀態 101
5.7 查看子進程pid 103
5.8 創建子進程統計系統登錄次數 104
5.9 獲取CPU信息 106
5.10 實現進程間通信 107
第6章 緩衝區管理 110
6.1 Buffer概述 110
6.2 判斷緩衝區對象 110
6.3 獲取緩衝區對象字節長度 112
6.4 讀取緩衝區對象 113
6.5 寫入緩衝區對象 116
6.6 緩衝區對象轉字符串 118
6.7 緩衝區對象裁剪 120
6.8 拷貝緩衝區對象 121
6.9 拼接緩衝區 123
6.10 應用Buffer緩衝區操作HTTP Request Header 126
第7章 網絡管理 131
7.1 網絡管理概述 131
7.2 創建基本的TCP服務器 131
7.3 創建基本的TCP客戶端 133
7.4 創建簡單的TCP通信應用 135
7.5 創建TCP服務器的另一種方式 138
7.6 服務器端綁定事件 139
7.7 獲取服務器地址參數 142
7.8 獲取當前服務器連接數 144
7.9 獲取套接字地址 147
7.10 獲取遠程地址 149
7.11 使用套接字寫數據 150
7.12 控制套接字數據流的應用 154
7.13 創建UDP服務器 158
7.14 創建UDP客戶端 160
7.15 創建簡單的UDP應用 162
7.16 UDP廣播服務的實現 165
7.17 模仿簡單的聊天室應用 169
第8章 Web管理 174
8.1 Web管理概述 174
8.2 構建一個基本的HTTP服務器 174
8.3 編寫一個簡單的HTTP客戶端 177
8.4 HTTP響應狀態碼 179
8.5 設定和獲取HTTP頭文件 183
8.6 寫HTTP頭文件的方法 185
8.7 發送與處理GET請求 187
8.8 進行重定向操作 190
8.9 服務器多路徑處理方式 192
8.10 模擬ping命令連接服務器 196
8.11 安裝Express開發框架 198
8.12 使用Express開發框架開發的Hello World 199
8.13 Express開發框架路由處理 204
8.14 應用Express框架實現登錄頁面 208
8.15 Express框架實現Ajax方式操作 212
第9章 數據庫管理 217
9.1 數據庫概述 217
9.2 連接MySQL數據庫 218
9.3 查詢MySQL數據庫 220
9.4 插入MySQL數據庫 221
9.5 刪除MySQL數據庫 222
9.6 更新MySQL數據庫 224
9.7 操作MySQL數據庫連接池 225
9.8 連接MongoDB數據庫 227
9.9 連接MongoDB數據集合 230
9.10 查詢MongoDB數據集合 232
9.11 插入MongoDB數據集合 235
9.12 刪除MongoDB數據集合 237
9.13 更新MongoDB數據集合 238
第10章 Util常用工具 242
10.1 Util概述 242
10.2 原型對象繼承 242
10.3 將任意對象轉換為字符串 245
10.4 驗證是否為數組 246
10.5 驗證是否為日期格式 247
10.6 驗證是否為正則表達式 248
10.7 驗證是否為錯誤類型 249
10.8 格式化字符串 251
10.9 驗證類型 252
作者介紹
李柯泉,計算機科學與技術研究生。現就職於大連海事大學信息科學技術中心,創立了開源組織青龍小組,是大連海事大學CSDN高校俱樂部第一任負責人。為大連海事大學開發了第一款校園移動APP,參與大連海事大學新版校園網設計與實現,承接了大連海事大學項目“基於校園網的移動流媒體點播系統”。熟悉流行的Vue、React、Angular、Node等Web框架。