当前位置:首页 > 工业技术
Node.js权威指南
Node.js权威指南

Node.js权威指南PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:陆凌牛著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111460787
  • 页数:548 页
图书介绍:本书旨在成为Node.js领域最全面、最系统和最具实战性的一本书,供初学者系统学习和开发者工作时参考。本书的作者是资深的Web开发专家,不仅全面、细致地讲解了Node.js的所有功能、特性、使用方法、开发技巧,而且还讲解了与之相关的各种扩展功能和工具的使用。全书一共16章,共分为三大部分:第一部分:使用Node.js框架创建高性能服务器(第1~12章),主要介绍了Node.js基本概念和作用,Node.js中的交互式运行环境REPL,Node.js的基础知识,模块与npm包管理工具,使用Buffer类处理二进制数据,在Node.js中操作文件系统,TCP与UDP,HTTP与HTTPS服务器与客户端的创建,进程与子进程,Node.js的错误处理与断言处理,加密与压缩,常用模块的使用方法等;第二部分:使用第三方模块扩展Node.js应用程序(第13~15章),主要讲解了数据库访问,使用Express构建Web应用,Socket.IO;第三部分(第16章)是两个综合案例。
《Node.js权威指南》目录
标签:权威 指南

第1章 Node .js介绍 1

1.1 Node.js概述 2

1.1.1使用Node .js能够解决什么问题 2

1.1.2实现高性能服务器 2

1.1.3非阻塞型I/O及事件环机制 2

1.1.4 Node .j s适合开发的应用程序 3

1.2安装Node .js 3

1.3 Node .js中的模块 4

1.4一个简单的示例应用程序 6

1.5小结 8

第2章 Node .js中的交互式运行环境——REPL 9

2.1 REPL运行环境概述 10

2.2在REPL运行环境中操作变量 10

2.3在REPL运行环境中使用下划线字符 12

2.4在REPL运行环境中直接运行函数 12

2.5在REPL运行环境中定义并启动服务器 13

2.6 REPL运行环境中的上下文对象 13

2.7 REPL运行环境中的基础命令 14

2.8小结 17

第3章 Node .js基础知识 18

3.1 Node .js中的控制台 19

3.1.1 console.log方法 19

3.1.2 console.error方法 20

3.1.3 console.dir方法 21

3.1.4 console.time方法与console.timeEnd方法 22

3.1.5 console.trace方法 22

3.1.6 console.assert方法 23

3.2 Node .js中的全局作用域及全局函数 23

3.2.1 Node .j s中的全局作用域 23

3.2.2 setTimeout函数与clearTimeout函数 25

3.2.3 setInterval函数与clearInterval函数 25

3.2.4定时器对象的unref方法与ref方法 27

3.2.5与模块相关的全局函数及对象 28

3.3 _filename变量与_dimame变量 33

3.3.1 _filename变量 33

3.3.2 _dimame变量 34

3.4事件处理机制及事件环机制 34

3.4.1 EventEmitter类 35

3.4.2 EventEmitter类的各个方法 35

3.4.3获取指定事件的事件处理函数的数量 41

3.4.4 EventEmitter类自身所拥有的事件 42

3.4.5事件环机制 44

3.5在Node .js中使用调试器 45

3.5.1在命令行窗口中使用调试器 45

3.5.2观察变量值或表达式的执行结果 48

3.5.3设置与取消断点 49

3.5.4调试器中可以使用的其他实用命令 50

3.5.5使用node-inspector调试工具 54

3.6小结 55

第4章 模块与npm包管理工具 56

4.1核心模块与文件模块 57

4.2从模块外部访问模块内的成员 58

4.2.1使用exports对象 58

4.2.2将模块定义为类 58

4.2.3为模块类定义类变量或类函数 61

4.3组织与管理模块 61

4.3.1从node_modules目录中加载模块 61

4.3.2使用目录来管理模块 62

4.3.3从全局目录中加载模块 62

4.4模块对象的属性 63

4.5包与npm包管理工具 65

4.5.1 Node .js中的包 65

4.5.2 npm包管理工具 67

4.6小结 68

第5章 使用Buffer类处理二进制数据 69

5.1创建Buffer对象 70

5.2字符串的长度与缓存区的长度 72

5.3 Buffer对象与字符串对象之间的相互转换 74

5.3.1 Buffer对象的toString方法 74

5.3.2 Buffer对象的write方法 75

5.3.3 StringDecoder对象 75

5.4 Buffer对象与数值对象之间的相互转换 77

5.5 Buffer对象与JSON对象之间的相互转换 79

5.6复制缓存数据 80

5.7 Buffer类的类方法 81

5.7.1 isBuffer方法 81

5.7.2 byteLength方法 81

5.7.3 concat方法 82

5.7.4 isEncoding方法 83

5.8小结 83

第6章 在Node .js中操作文件系统 84

6.1同步方法与异步方法 85

6.2对文件执行读写操作 86

6.2.1文件的完整读写 86

6.2.2从指定位置处开始读写文件 91

6.3创建与读取目录 97

6.3.1创建目录 97

6.3.2读取目录 98

6.4查看与修改文件或目录的信息 99

6.4.1查看文件或目录的信息 99

6.4.2检查文件或目录是否存在 101

6.4.3获取文件或目录的绝对路径 102

6.4.4修改文件访问时间及修改时间 103

6.4.5修改文件或目录的读写权限 104

6.5可以对文件或目录执行的其他操作 105

6.5.1移动文件或目录 105

6.5.2创建与删除文件的硬链接 106

6.5.3创建与查看符号链接 107

6.5.4截断文件 110

6.5.5删除空目录 111

6.5.6监视文件或目录 111

6.6使用文件流 116

6.6.1流的基本概念 116

6.6.2使用ReadStream对象读取文件 119

6.6.3使用WriteStream对象写入文件 121

6.7对路径进行操作 127

6.8小结 134

第7章 实现基于TCP与UDP的数据通信 135

7.1使用net模块实现基于TCP的数据通信 136

7.1.1创建TCP服务器 136

7.1.2 socket端口对象 142

7.1.3创建TCP客户端 151

7.1.4 net模块中的类方法 164

7.2使用dgram模块实现基于UDP的数据通信 165

7.2.1创建UDP服务器与客户端 165

7.2.2实现广播与组播 172

7.3小结 175

第8章 创建HTTP与HTTPS服务器及客户端 176

8.1 HTTP服务器 177

8.1.1创建HTTP服务器 177

8.1.2获取客户端请求信息 182

8.1.3转换URL字符串与查询字符串 184

8.1.4发送服务器端响应流 191

8.2 HTTP客户端 202

8.2.1向其他网站请求数据 202

8.2.2向本地服务器请求数据 208

8.2.3制作代理服务器 210

8.3创建HTTPS服务器与客户端 211

8.3.1创建HTTPS服务器 211

8.3.2创建HTTPS客户端 216

8.4小结 223

第9章 进程与子进程 224

9.1 Node .js中的进程 225

9.1.1进程对象的属性 225

9.1.2进程对象的方法与事件 227

9.2创建多进程应用程序 235

9.2.1使用spawn方法开启子进程 236

9.2.2使用fork方法开启子进程 243

9.2.3使用exec方法开启子进程 250

9.2.4使用execFile方法开启子进程 253

9.3在多个子进程中运行Node.js应用程序 254

9.3.1使用fork方法创建worker对象 254

9.3.2 worker对象的方法与事件 262

9.4小结 270

第10章 Node.js中的错误处理与断言处理 271

10.1使用domain模块处理错误 272

10.1.1 domain模块概述 272

10.1.2创建并使用Domain对象 274

10.1.3隐式绑定与显式绑定 276

10.1.4绑定回调函数与拦截回调函数 279

10.1.5 domain堆栈的弹出与推入 280

10.1.6 Domain对象的销销毁 286

10.2 Node .js中的断言处理 286

10.2.1 equal方法与notEqual方法 287

10.2.2 strictEqual方法与notStrictEqual方法 288

10.2.3 assert方法与ok方法 288

10.2.4 deepEqual方法与notDeepEqual方法 289

10.2.5 throws方法与doesNotThrow方法 290

10.3小结 293

第11章 加密与压缩 294

11.1加密与解密处理 295

11.1.1 crypto模块概述 295

11.1.2散列算法 296

11.1.3 HMAC算法 297

11.1.4公钥加密 298

11.2压缩与解压缩处理 305

11.2.1创建各种用于压缩及解压缩的对象 305

11.2.2 zlib模块中的各种方法 310

11.3小结 311

第12章 Node.js中的其他模块 312

12.1使用dns模块解析域名 313

12.1.1使用resolve方法将域名解析为DNS记录 313

12.1.2使用lookup方法查询IP地址 315

12.1.3使用reverse方法反向解析IP地址 316

12.1.4 dns模块中的各种错误代码 317

12.2使用punycode模块转换punycode编码 318

12.3使用os模块获取操作系统信息 320

12.4使用readline模块逐行读取流数据 323

12.4.1创建Interface对象 323

12.4.2 Interface对象所拥有的各种方法与事件 327

12.5使用util模块中提供的一些实用方法 335

12.6使用vm模块改变脚本运行环境 346

12.6.1在独立环境中运行JavaScript代码 346

12.6.2创建并使用Script对象 350

12.7自定义REPL运行环境 352

12.8小结 358

第13章 数据库访问 359

13.1在MongoDB数据库中存取数据 360

13.1.1 MongoDB概述 360

13.1.2安装MongoDB数据库 360

13.1.3安装MongoDB包 361

13.1.4连接MongoDB数据库 361

13.1.5在MongoDB数据库中插入数据 364

13.1.6在MongoDB数据库中查询数据 369

13.1.7在MongoDB数据库中更新与删除数据 384

13.1.8使用Mongoose类库 393

13.2在MySQL数据库中存取数据 395

13.2.1建立连接与关闭连接 395

13.2.2执行数据的基本处理 399

13.2.3执行存储过程 404

13.2.4执行多表结合查询 406

13.2.5以数据流的方式处理查询数据 409

13.2.6创建连接池 411

13.3小结 413

第14章 使用Express构建Web应用程序 414

14.1 Express概述 415

14.1.1安装Express 415

14.1.2使用Express开发一个简单的示例应用程序 415

14.2设置路由 417

14.3使用各种提交数据或请求数据的方法 421

14.3.1使用post方法接收客户端提交的POST请求 421

14.3.2使用put方法接收客户端提交的PUT请求 424

14.3.3使用delete方法接收客户端提交的DELETE请求 426

14.3.4使用all方法接收客户端提交的各种请求 428

14.4中间件 430

14.4.1中间件概述 430

14.4.2 Express框架中内置的中间件 432

14.4.3 basicAuth中间件 433

14.4.4 bodyParser中间件 435

14.4.5 cookieParser中间件 438

14.4.6 logger中间件 439

14.4.7 methodOverride中间件 442

14.4.8 responseTime中间件 446

14.4.9 router中间件 446

14.4.10 session中间件 448

14.4.11 static中间件 453

14.4.12 directory中间件 456

14.4.13 Express 3中的异常处理机制 459

14.4.14 limit中间件函数 465

14.4.15 配置应用程序 466

14.5模板引擎 469

14.5.1模板引擎概述 469

14.5.2 Jade模板引擎的使用方法 470

14.5.3 EJS模板引擎的使用方法 477

14.6小结 480

第15章 使用Socket.IO类库实现WebSocket通信 481

15.1 Socket.IO概述 482

15.2 Socket.IO的使用方法 482

15.3在Express框架中使用Socket.IO 489

15.4在服务器端保存用户数据 490

15.5广播消息 493

15.6使用命名空间 496

15.7小结 499

第16章 综合案例介绍 500

16.1创建简单聊天室应用程序 501

16.1.1案例概述 501

16.1.2页面显示效果 501

16.1.3 HTML页面代码及CSS样式代码 505

16.1.4 JavaScript脚本代码部分 509

16.1.5服务器端代码 512

16.2创建Web应用程序 513

16.2.1案例概述 513

16.2.2页面展示效果 514

16.2.3订单检索页面 517

16.2.4订单编辑页面 529

16.3小结 547

返回顶部