本書精選適用於生產環境的Node.js10代碼實例,説明讀者從零開始掌握Node.js伺服器程式設計。全書內容翔實、重點突出、通俗易懂,涵蓋Node.js程式開發的方方面面。
全書共分為10章,內容包括:Node.js10控制台輸出、檔管理、進程與非同步I/O管理、進程通信、緩衝區Buffer管理、網路管理、Web管理、My SQL與MongoDB資料庫管理和常用工具Util開發等方面的內容。
本書是掌握Node.js10程式設計非常好的圖書,全書內容簡潔、代碼精練、實例豐富,能夠説明初學者快速掌握Node.js開發。同時,對於設計人員提高Web伺服器端指令碼語言開發的技術水準有非常積極的指導作用。
李柯泉,電腦科學與技術研究生。現就職于大連海事大學資訊科學技術中心,創立了開源組織青龍小組,是大連海事大學CSDN高校俱樂部第一任負責人。為大 連海事大學開發了第一款校園移動APP,參與大連海事大學新版校園網設計與實現,承接了大連海事大學專案“基於校園網的移動流媒體點播系統”。熟悉流行的 Vue、React、Angular、Node等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 模仿簡單的聊天室應用 16
第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