注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Koa與Node.js開發(fā)實(shí)戰(zhàn)

Koa與Node.js開發(fā)實(shí)戰(zhàn)

Koa與Node.js開發(fā)實(shí)戰(zhàn)

定 價(jià):¥79.00

作 者: iKcamp 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787121355134 出版時(shí)間: 2018-12-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 340 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  Node.js 10已經(jīng)進(jìn)入LTS時(shí)代!其應(yīng)用場(chǎng)景已經(jīng)從腳手架、輔助前端開發(fā)(如SSR、PWA等)擴(kuò)展到API中間層、代理層及專業(yè)的后端開發(fā)。Node.js在企業(yè)Web開發(fā)領(lǐng)域也日漸成熟,無論是在API中間層,還是在微服務(wù)中都得到了非常好的落地。本書將通過Web開發(fā)框架Koa2,引領(lǐng)你進(jìn)入Node.js的主戰(zhàn)場(chǎng)!本書系統(tǒng)講解了在實(shí)戰(zhàn)項(xiàng)目中使用Koa框架開發(fā)Web應(yīng)用的流程和步驟。第1章介紹Node.js的安裝、開發(fā)工具及調(diào)試。第2章和第3章介紹搭建Koa實(shí)戰(zhàn)項(xiàng)目的雛形。第4章詳細(xì)介紹HTTP基礎(chǔ)知識(shí)及其實(shí)戰(zhàn)應(yīng)用。第5章介紹MVC、模板引擎和文件上傳等實(shí)用功能。第6~8章介紹數(shù)據(jù)庫(kù)、單元測(cè)試及項(xiàng)目的優(yōu)化與部署。第9~13章介紹從零開始搭建時(shí)下火爆的微信小程序前端及后臺(tái)管理應(yīng)用的全部過程,以及最終的服務(wù)器部署,包括HTTPS、Nginx。本書示例豐富、側(cè)重實(shí)戰(zhàn),以完整的實(shí)戰(zhàn)項(xiàng)目貫穿全部章節(jié),并提供書中涉及的所有源碼及部分章節(jié)的配套視頻教程,將是前端開發(fā)人員立足新領(lǐng)域和后端開發(fā)人員了解Node.js并使用Koa2開發(fā)Web應(yīng)用的得力助手。

作者簡(jiǎn)介

  iKcamp由熱愛原創(chuàng)和翻譯的小伙伴發(fā)起,成立于2016年7月。名字中的“iK”代表布蘭登·艾克(JavaScript之父)。追隨著JavaScript這門語(yǔ)言所秉持的精神,崇尚自由和開放的我們一起工作、分享、創(chuàng)作,并期待著遇見更多有趣的靈魂。iKcamp已出版的圖書《移動(dòng)Web前端高效開發(fā)實(shí)戰(zhàn):HTML 5 CSS 3 JavaScript Webpack React Native Vue.js Node.js》曾廣受好評(píng)。陳達(dá)孚:碩士研究生畢業(yè)于香港中文大學(xué),《前端開發(fā)者指南(2017)》譯者之一,在中國(guó)前端開發(fā)者大會(huì)、中生代技術(shù)大會(huì)等會(huì)議上發(fā)表過主題演講。金晶:非典型程序員一名,碩士研究生畢業(yè)于利茲大學(xué),曾主導(dǎo)翻譯《前端開發(fā)者指南(2017)》,專注領(lǐng)域?yàn)榍岸藙?dòng)效(包括但不限于CSS 3、SVG、WebGL)。干?B:滬江教育金融事業(yè)部前端負(fù)責(zé)人,具有多年一線互聯(lián)網(wǎng)公司前端開發(fā)經(jīng)驗(yàn)。張利濤:滬江教育資深前端開發(fā)工程師,iKcamp.com線上課程—— 微信小程序和Node.js主編。戴亮:美團(tuán)點(diǎn)評(píng)資深前端架構(gòu)師,在GMTC(全球大前端技術(shù)大會(huì))上發(fā)表過主題演講。周遙:《HTML 5網(wǎng)頁(yè)開發(fā)實(shí)例詳解》作者之一,iKcamp團(tuán)隊(duì)發(fā)起人之一。

圖書目錄

第1篇 基礎(chǔ)知識(shí)
第1章 Node.js入門 2
1.1 Node.js介紹 2
1.1.1 什么是Node.js 3
1.1.2 Node.js的歷史和發(fā)展過程 4
1.1.3 Node.js的特點(diǎn)和應(yīng)用場(chǎng)景 7
1.1.4 安裝Node.js 8
1.1.5 實(shí)戰(zhàn)演練:使用Node.js搭建一個(gè)HTTP Server 10
1.2 NPM 11
1.2.1 NPM介紹 12
1.2.2 NPM模塊結(jié)構(gòu) 13
1.2.3 使用NVM控制Node.js版本 16
1.2.4 Web代理工具NProxy 18
1.2.5 實(shí)戰(zhàn)演練:在npm.org上發(fā)布一個(gè)模塊 20
1.3 Visual Studio Code編輯器 22
1.3.1 Visual Studio Code的安裝及其功能 22
1.3.2 使用Visual Studio Code調(diào)試Node.js 23
1.4 本章小結(jié) 25
第2章 遇見Koa 26
2.1 Koa介紹 26
2.1.1 Koa的前世今生 26
2.1.2 Koa的安裝及搭建(視頻演示) 29
2.2 Context對(duì)象 30
2.2.1 什么是Context對(duì)象 31
2.2.2 常用屬性和方法 31
2.3 Koa的中間件 35
2.3.1 中間件概念 35
2.3.2 實(shí)戰(zhàn)演練:使用中間件獲取響應(yīng)時(shí)間(視頻演示) 38
2.3.3 常用Koa中間件介紹 39
2.4 本章小結(jié) 43
第3章 路由 44
3.1 路由介紹 44
3.1.1 路由的概念 45
3.1.2 實(shí)戰(zhàn)演練:使用Koa中的簡(jiǎn)單路由自定義404頁(yè)面 46
3.2 koa-router路由中間件 48
3.2.1 koa-router的安裝和介紹 48
3.2.2 RESTful規(guī)范 48
3.2.3 koa-router用法(視頻演示) 50
3.2.4 通過koa-router實(shí)現(xiàn)接口的權(quán)限控制 55
3.3 本章小結(jié) 58
第4章 HTTP 59
4.1 HTTP介紹 59
4.1.1 HTTP的誕生 59
4.1.2 URI和URL 62
4.1.3 常用的HTTP狀態(tài)碼 63
4.1.4 常用的請(qǐng)求方法 63
4.1.5 常用的HTTP首部字段 64
4.2 HTTP/2 65
4.2.1 采用二進(jìn)制格式傳輸數(shù)據(jù) 65
4.2.2 多路復(fù)用 65
4.2.3 流的優(yōu)先級(jí) 66
4.2.4 首部壓縮 66
4.2.5 服務(wù)端推送 67
4.3 Node.js的querystring模塊 67
4.3.1 querystring模塊的使用 67
4.3.2 koa-router中的querystring(視頻演示) 68
4.3.3 實(shí)戰(zhàn)演練:電影搜索列表 69
4.4 koa-bodyparser中間件 72
4.4.1 koa-bodyparser介紹 72
4.4.2 koa-bodyparser的使用(視頻演示) 73
4.4.3 實(shí)戰(zhàn)演練:實(shí)現(xiàn)用戶注冊(cè)功能并進(jìn)行數(shù)據(jù)解析 74
4.5 本章小結(jié) 77
第2篇 應(yīng)用實(shí)戰(zhàn)
第5章 構(gòu)建Koa Web應(yīng)用 80
5.1 MVC 80
5.1.1 MVC的發(fā)展歷程 81
5.1.2 MVC三層架構(gòu) 81
5.1.3 在Koa中實(shí)現(xiàn)MVC(視頻演示) 83
5.2 模板引擎 87
5.2.1 什么是模板引擎 88
5.2.2 常見的模板引擎有哪些 88
5.2.3 Nunjucks語(yǔ)法介紹 91
5.2.4 Nunjucks在Koa中的應(yīng)用(視頻演示) 96
5.3 靜態(tài)資源 97
5.3.1 靜態(tài)資源的類型 98
5.3.2 koa-static簡(jiǎn)介 99
5.3.3 koa-static常用配置(視頻演示) 99
5.3.4 實(shí)戰(zhàn)演練:開發(fā)登錄驗(yàn)證頁(yè)面(視頻演示) 100
5.4 其他常用開發(fā)技巧 103
5.4.1 簡(jiǎn)易版koa-json插件開發(fā)(視頻演示) 103
5.4.2 使用koa-multer中間件實(shí)現(xiàn)文件上傳 106
5.5 本章小結(jié) 110
第6章 數(shù)據(jù)庫(kù) 111
6.1 數(shù)據(jù)庫(kù)介紹 111
6.1.1 什么是數(shù)據(jù)庫(kù) 111
6.1.2 常見的數(shù)據(jù)庫(kù) 113
6.2 在Koa中應(yīng)用MySQL數(shù)據(jù)庫(kù) 114
6.2.1 下載安裝MySQL 114
6.2.2 Sequelize介紹 118
6.2.3 實(shí)戰(zhàn)演練:客戶信息數(shù)據(jù)展現(xiàn) 122
6.3 在Koa中應(yīng)用MongoDB數(shù)據(jù)庫(kù) 126
6.3.1 下載安裝MongoDB 126
6.3.2 Mongoose介紹 128
6.3.3 實(shí)戰(zhàn)演練:課程表數(shù)據(jù)展現(xiàn) 132
6.4 在Koa中應(yīng)用Redis數(shù)據(jù)庫(kù) 135
6.4.1 什么是Redis 135
6.4.2 Redis庫(kù)介紹 138
6.4.3 實(shí)戰(zhàn)演練:持久化用戶Session狀態(tài) 141
6.5 本章小結(jié) 145
第7章 單元測(cè)試 146
7.1 Chai斷言庫(kù) 147
7.1.1 Chai的介紹和安裝 147
7.1.2 Chai的使用 147
7.2 Mocha框架 149
7.2.1 Mocha的介紹和安裝 150
7.2.2 Mocha的使用 150
7.3 SuperTest測(cè)試RESTful API 154
7.3.1 SuperTest的介紹和安裝 154
7.3.2 SuperTest的使用 154
7.4 其他常用工具 155
7.4.1 Nock模擬服務(wù)器響應(yīng) 156
7.4.2 Nyc測(cè)試覆蓋率 157
7.5 本章小結(jié) 159
第8章 優(yōu)化與部署 161
8.1 服務(wù)優(yōu)化 161
8.1.1 使用log4js記錄日志(視頻演示) 162
8.1.2 自定義錯(cuò)誤頁(yè)(視頻演示) 168
8.1.3 異常捕獲處理 173
8.1.4 實(shí)戰(zhàn)演練:優(yōu)化Web開發(fā)項(xiàng)目結(jié)構(gòu)(視頻演示) 176
8.2 部署 179
8.2.1 Node.js進(jìn)程管理器PM2 179
8.2.2 應(yīng)用容器引擎Docker 182
8.2.3 在線免費(fèi)開源集成Travis CI 185
8.2.4 利用Nginx部署HTTPS 189
8.3 服務(wù)監(jiān)控 192
8.3.1 Node.js服務(wù)性能指標(biāo)及采集 192
8.3.2 日志分析系統(tǒng)ELK 196
8.3.3 Keymetrics監(jiān)控云服務(wù) 197
8.4 本章小結(jié) 199
第3篇 項(xiàng)目實(shí)戰(zhàn):從零開始搭建微信小程序后臺(tái)
第9章 云相冊(cè)功能介紹和準(zhǔn)備工作 203
9.1 應(yīng)用介紹 204
9.2 小程序開發(fā)賬戶申請(qǐng) 206
9.3 準(zhǔn)備域名 209
9.3.1 注冊(cè)域名 209
9.3.2 實(shí)名認(rèn)證 211
9.3.3 域名備案 212
9.4 準(zhǔn)備云服務(wù)器 216
9.5 配置DNS解析 218
9.6 本章小結(jié) 221
第10章 云相冊(cè)服務(wù)開發(fā) 222
10.1 小程序登錄 222
10.2 掃碼登錄 230
10.3 小程序接口 236
10.3.1 建立數(shù)據(jù)模型 236
10.3.2 定義相冊(cè)接口 238
10.3.3 定義照片接口 242
10.4 后臺(tái)管理系統(tǒng)接口 244
10.4.1 定義用戶列表接口 244
10.4.2 定義權(quán)限管理接口 246
10.4.3 定義獲取照片接口 247
10.4.4 定義審核照片接口 249
10.5 記錄日志 249
10.6 本章小結(jié) 252
第11章 云相冊(cè)小程序開發(fā) 254
11.1 項(xiàng)目介紹 254
11.2 結(jié)合Redux實(shí)現(xiàn)小程序組件通信 259
11.3 “個(gè)人中心”頁(yè)面 264
11.4 “新建相冊(cè)”頁(yè)面 267
11.4.1 自定義組件用法介紹 267
11.4.2 組件事件 269
11.4.3 實(shí)現(xiàn)“新建相冊(cè)”組件 270
11.5 “相冊(cè)列表”頁(yè)面 272
11.5.1 展示相冊(cè)列表 273
11.5.2 進(jìn)入指定相冊(cè)頁(yè)面 274
11.5.3 調(diào)用“新建相冊(cè)”組件 274
11.6 “照片列表”頁(yè)面 275
11.6.1 獲取照片列表數(shù)據(jù) 276
11.6.2 數(shù)據(jù)按日期分組 277
11.6.3 上傳照片到當(dāng)前相冊(cè) 278
11.6.4 單擊圖片顯示高清大圖 279
11.7 小程序?qū)徍税l(fā)布 280
11.8 本章小結(jié) 282
第12章 云相冊(cè)后臺(tái)管理系統(tǒng) 283
12.1 整體架構(gòu) 284
12.1.1 基本文件結(jié)構(gòu) 285
12.1.2 前端模板結(jié)構(gòu) 287
12.1.3 路由設(shè)計(jì) 290
12.2 相冊(cè)列表及相關(guān)功能 292
12.2.1 分類展示照片 293
12.2.2 審核照片 297
12.2.3 HTTP通信 301
12.2.4 分頁(yè)控件 302
12.3 用戶列表及相關(guān)功能 304
12.4 登錄與鑒權(quán) 309
12.4.1 登錄 310
12.4.2 鑒權(quán)中間件 315
12.5 額外展開:SVG動(dòng)畫效果及其他 317
12.6 本章小結(jié) 318
第13章 云相冊(cè)服務(wù)器部署 319
13.1 部署數(shù)據(jù)庫(kù) 321
13.1.1 存儲(chǔ)設(shè)置 322
13.1.2 安全策略 323
13.2 部署Nginx 325
13.2.1 安裝OpenResty 325
13.2.2 Nginx配置 326
13.2.3 插件擴(kuò)展 328
13.3 部署HTTPS 329
13.3.1 強(qiáng)制HTTPS跳轉(zhuǎn) 329
13.3.2 添加WWW跳轉(zhuǎn) 330
13.4 配置Koa服務(wù) 331
13.5 本章小結(jié) 332

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)