失效链接处理 |
Node.js项目实践-构建可扩展的Web应用 PDF 下载
转载自:http://download.csdn.net/detail/haidebaozi/9782562
本站整理下载:版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/1065308751.html
相关截图:
资料简介: 《Node.js项目实践:构建可扩展的Web应用》用专业的讲解方式,带领读者从“Hello World”示例开始,一步步将其构建成有实际用途的Node.js应用。《Node.js项目实践:构建可扩展的Web应用》涉及许多组件的使用,比如安全、部署上线、组织代码、数据库驱动和模板引擎等,从中可使读者接触到很多经过历年实践所得出的广受欢迎的模块库,它们可以大大提高开发人员的代码质量和开发效率。 资料目录: 第1 章 安装Node.js 及相关要点 .............. 1 安装Node.js 和NPM................................. 1 一键安装 ................................................ 2 通过HomeBrew 或MacPorts 安装 ........ 3 通过tar 文件安装 .................................. 4 无须sudo 授权进行安装 ........................ 4 通过Git Repo 进行安装 ......................... 5 通过Nave 进行多版本安装 ................... 5 通过NVM 进行多版本安装...................6 其他的多版本系统 .................................. 6 检查安装 ................................................ 7 Node.js 控制台(REPL) ....................... 7 加载Node.js 脚本.......................................9 Node.js 的基础和语法 ............................... 9 弱类型 .................................................... 9 Buffer——Node.js 特殊数据类型..........10 对象字面量 ...........................................10 函数 ....................................................... 11 数组 .......................................................12 原型特性 ...............................................12 编码规范 ...............................................13 Node.js 的全局变量和保留字 ................14 __dirname 与process.cwd 的对比 .........17 浏览器API 输助工具 ............................17 Node.js 的核心模块 ...............................18 便捷的Node.js 工具 ..............................20 在Node.js 中读写文件 ..........................20 Node.js 中的数据流 ...............................21 使用NPM 安装Node.js 模块 ................21 优化Node.js 中的回调函数...................22 使用Node.js 的HTTP 模块来创建一个简单服务器 ...................23 调试Node.js 程序......................................24 核心Node.js 调试 ..................................24 使用Node Inspector 来调试 ..................25 Node.js 集成开发环境和代码编辑器 ...28 监听文件变化 .............................................30 小结 ...............................................................31 第2 章 使用Express.js 4 创建Node.js 的Web 应用程序 ...................32 什么是Express.js .......................................32 Express.js 是如何工作的 ..........................35 Express.js 的安装 .......................................36 Express.js 的版本 ..................................36 Express.js 生成器 ..................................37 本地Express.js ......................................38 Express.js 脚手架 .......................................40 Express.js 命令行界面 ...........................41 Express.js 中的路由 ...............................43 Express.js 的核心——中间件 ................44 一个Express.js 应用的配置...................45 Jade 就是Express.js/Node.js 的Haml ...45 脚手架总结 ...........................................45 博客项目概述 .............................................46 提交数据 ...............................................47 Express.js 4 中的Hello World 例子 .......48 创建文件夹 ...........................................49 NPM 初始化和package.json.................50 依赖声明:npm install ...........................50 app.js 文件 .............................................51 Jade 模板 ...............................................55 运行Hello World 应用 ...........................56 小结 ...............................................................56 第3 章 Node.js 基于Mocha 的测试驱动开发和行为驱动开发 ......................57 安装与理解Mocha ...................................58 理解Mocha 的hook 机制 ......................60 用assert 进行TDD...................................61 断言库Chai ...........................................63 用Expect.js 进行BDD.............................64 Expect.js 的语法 ....................................65 项目:为博客开发一个BDD 测试 ......65 将配置参数写入Makefile .....................68 小结 ...............................................................69 第4 章 模板引擎:Jade 和Handlebars 70 Jade 的语法和特性 ...................................70 标签 .......................................................71 变量/数据 ..............................................71 属性 .......................................................72 字面量 ...................................................73 文本 .......................................................73 Script 和 Style 块 ..................................74 JavaScript 代码 ......................................74 注释 .......................................................75 if 语句 ....................................................75 each 语句 ...............................................75 过滤器 ...................................................76 读取变量 ...............................................76 case ........................................................76 函数mixin .............................................77 include ....................................................78 extend .....................................................78 单独使用Jade .............................................79 Handlebars 的语法 ....................................83 变量 .......................................................83 each 语句 ...............................................83 非转义输出 ...........................................84 if 语句 ....................................................85 unless .....................................................85 with ........................................................86 注释 .......................................................87 自定义 Helpers .....................................87 Include ...................................................88 单独使用Handlebars .................................88 Express.js 4 中Jade 和Handlebars 的用法 ............................................91 Jade 和 Express.js.................................92 Handlebars 和Express.js........................92 项目:给博客添加Jade 模板 .................93 layout.jade ..............................................94 index.jade ...............................................96 article.jade ..............................................97 login.jade ................................................98 post.jade .................................................99 admin.jade ............................................ 100 小结 ............................................................. 101 第5 章 MongoDB、Mongoskin 特性 .... 102 简单且正确地安装MongoDB .............. 103 如何运行Mongo 服务 ............................ 104 用控制台操作Mongo ............................. 105 MongoDB shell 命令介绍 ...................... 106 Node.js 版原生MongoDB 驱动示例 .. 107 Mongoskin 的主要方法介绍 ................. 111 项目:用Mongoskin 把博客数据存储到MongoDB............................ 112 项目:在MongoDB 中添加seed 数据 ......................................... 112 项目:Mocha 测试 ............................... 113 项目:添加持久连接 ........................... 115 运行App .............................................. 126 小结 ............................................................. 127 第6 章 在Node.js 应用中使用session 和OAuth 进行用户认证和授权 ............... 128 使用Express.js 中间件权限管理 ......... 128 基于token 的用户认证 ........................... 129 基于session 的用户认证 ........................130 项目实践:为博客增加邮箱和密码登录功能 .......................................... 132 session 中间件 ..................................... 132 博客中的权限管理 ............................... 133 博客中的用户授权 ............................... 136 运行应用 ............................................. 138 Node.js OAuth ........................................... 138 使用Node.js OAuth 实现Twitter OAuth2.0 的示例 ................................ 139 Everyauth ............................................. 140 项目实践:为博客增加Twitter OAuth 1.0 第三方登录(使用Everyauth 实现) .......... 141 添加“使用Twitter 账户登录”链接 .. 142 配置EveryauthTwitter 模块 ................. 142 小结 ............................................................. 148 第7 章 使用ORM 类库Mongoose 提升你的Node.js 数据 ......................... 149 安装Mongoose ......................................... 150 用独立的Mongoose 脚本建立数据库连接 .................................. 150 Mongoose 的原型 .................................... 152 使用钩子保持代码的逻辑清晰 ............ 154 自定义静态方法和实例方法 ................ 155 Mongoose 模型 .......................................155 使用population 建立关系和连接 ........158 嵌套的文档 ............................................... 160 虚拟字段 .................................................... 161 修改原型的行为 ...................................... 162 Express.js Mongoose =真正的MVC ..................................... 164 小结 ................................. 175 第8 章 使用Express.js 和Hapi 构建Node.js REST API 服务 ....................... 176 RESTful API 基础 ................................... 177 项目依赖 .................................................... 179 使用Mocha 和Superagent 进行测试 . 180 使用Express 和Mongoskin 实现REST API 服务器 ...................................... 185 重构:使用Hapi 搭建REST API 服务器 .............................................. 192 小结 ............................................................. 199 第9 章 WebSocket、Socket.IO 和DerbyJS 的实时应用程序 .................... 200 什么是WebSocket ................................... 200 用ws 模块的例子介绍本地WebSocket 和Node.js .............................. 201 浏览器WebSocket 的实现 ...................201 用ws 模块实现Node.js 服务器 .......... 202 Socket.IO 和Express.js 的例子 ............ 204 用DerbyJS、Express.js 和MongoDB 搭建一个在线协作的代码编辑器例子 ........ 209 项目依赖和package.json ..................... 210 服务器端代码 ...................................... 211 DerbyJS 应用程序 ................................ 213 DerbyJS 视图 ....................................... 215 编辑器Tryout ...................................... 217 小结 ............................................................. 218 第10 章 为Node.js 应用上线做准备 ..... 219 环境变量 .................................................... 219 生产环境下的Express.js ........................ 220 生产环境下的Socket.IO ........................ 222 错误处理 ................................ 223 错误处理工具Node.js domains ............ 225 使用Cluster 处理多线程 ........................229 使用Cluster2 处理多线程 ..................... 232 事件日志和监控 ...................................... 233 监控 ..................................................... 233 生产环境下的REPL ............................ 235 Winston ................................................ 236 使用Papertrail 应用来管理日志 ......... 237 使用Grunt 处理任务 ............................... 237 使用Git 来做版本控制和发布代码 ... 241 安装Git ............................................... 242 生成SSH 密钥 .................................... 242 创建本地Git 仓库................................245 将本地仓库推送到GitHub .................. 245 在云上使用TravisCI 运行测试用例 .. 246 TravisCI 配置 ...................................... 247 小结 ............................................................. 248 第11 章 部署Node.js 应用 ....................... 249 部署到Heroku .......................................... 249 部署到Amazon 网络服务 ..................... 255 使用forever、Upstart 和init.d 保持Node.js 持续运行 ................ 259 forever .................................................. 259 Upstart .................................................. 260 init.d ..................................................... 262 尽可能使用Nginx 提供静态资源 ....... 264 使用Varnish 缓存 .................................... 266 小结 ............................................................. 268 第12 章 Node.js 模块发布和参与开源 . 269 推荐的目录结构 ...................................... 270 所需模式 .................................................... 270 package.json............................................... 273 发布到NPM ............................................. 274 锁定版本 .................................................... 274 小结 ............................................................. 275 结束语 ......................................................... 275 进阶阅读 .................................................... 276
勘误和联系方式 ...................................... 276 |