Node.js是一种方兴未艾的新技术,诞生于2009年。经过两年的快速变化,Node.js生态圈已经逐渐走向稳定。Node.js采用了以往类似语言和框架中非常罕见的技术,总结为关键词就是:非阻塞式控制流、异步I/O、单线程消息循环。不少开发者在入门时总要经历一个痛苦的思维转变过程,给学习带来巨大的障碍。 而本书的目的就是帮助读者扫清这些障碍,学会使用Node.js进行Web后端开发,同时掌握事件驱动的异步式编程风格,以便进一步利用Node.js的高级特性。
本书首先简要介绍Node.js,然后通过各种示例讲解Node.js的基本特性,再用案例式教学的方式讲述如何用Node.js 进行Web开发,接着探讨一些Node.js进阶话题,最后展示如何将一个Node.js 应用部署到生产环境中。本书面向对Node.js 感兴趣,但没有基础的读者,也可供已了解Node.js,并对Web前端/后端开发有一定经验,同时想尝试新技术的开发者参考。
社区评价
“简洁的代码示例加上轻快的语言,带你进入同样简明的Node.js世界。如果你想立即使用Node.js作为你的Web开发工具,本书为你提供了绝佳的指导。”
——杨懋,微软亚洲研究院主管研究员
“本书是一本浅显易懂的Node.js入门读物,适合有一定JavaScript基础的开发人员阅读。通过阅读这本书,可以帮助你完成从Node.js相关知识的学习,到使用Node.js构建一个现实Web系统的全过程。难能可贵的是,本书在讲解Node.js相关知识的同时,还详细介绍了一些Web开发领域的通用知识与原理,这对开发一个完善健壮的Web应用是必不可少的。”
——贾超,淘宝网数据产品部资深经理,CNode社区发起者
“在CNode社区企盼将近两年后,第一本中文的Node.js书籍终于诞生了,家宝同学的这本《Node.js开发指南》可以引你走近Node,让你初探到Node的好和美。”
——田永强,淘宝网数据产品部的前端工程师,CNode社区组织者
请问一下,第五章第六小节,用户注册和登录这里,运行代码报如下错误,是因为我的数据库配置有问题吗?
node.js:201 throw e; // process.nextTick error, or ‘error’ event on first tick ^ TypeError: Cannot read property ‘Store’ of undefined at new <anonymous> (F:\workstation\nodejs\chap5\microblog\node_modules\conne ct-mongo\lib\connect-mongo.js:27:30) at HTTPServer.<anonymous> (F:\workstation\nodejs\chap5\microblog\app.js:22:1
- at HTTPServer.configure (F:\workstation\nodejs\chap5\microblog\node_modules
express\lib\http.js:542:61) at Object.<anonymous> (F:\workstation\nodejs\chap5\microblog\app.js:14:5) at Module._compile (module.js:441:26) at Object…js (module.js:459:10) at Module.load (module.js:348:31) at Function._load (module.js:308:12) at Array.0 (module.js:479:10) at EventEmitter._tickCallback (node.js:192:40)
已经购买了。。。。。。。书不错 ,就是太薄了。 非常喜欢附录A,javascript的高级特性。 有机会出第二版的时候,麻烦多加点有关node里面的javascript知识,这样对学习node更易于理解。
能否在連接數據庫的那邊說詳細點,我剛接觸,還有mongodb也是剛接觸,裏面是不是有個連接DB是通過 connect-mongodb而非connect-mongo呢?我那邊一直沒頭緒?有誰比較清楚,能否跟我說下,十分感恩!!!
希望能更新下代码,因为那上面后面express项目跟现在的不一样了,所以希望楼主可以针对后面这个项目的内容更新一下,写在博客中,然后也转过来 毕竟很多都是前端初次接触后端,遇到很多问题还不是很好解决的
昨天书拿到手了,那块关于php和node.js的测试是我做的,作者你忘记加上测试硬件环境和node版本了,因为那个测试是在老的4CPU服务器上做的,后来我在8CPU,64位系统服务器上测试hello world,每秒响应请求数达到了2W3。
这个问题跟express版本没关系,主要是你用的connect-mongo的版本也许跟书里教程用的不是同一版本。看看connect-mongo的readme。 你修改如下试试: 将 var mongoStore = require(“connect-mongo”); 改为var mongoStore = require(“connect-mongo”)(express);
找到问题原因了,我想如果完全按照书上例子敲代码的同学应该也会遇到这个问题。 这个问题跟express版本没关系,主要是你用的connect-mongo的版本也许跟书里教程用的不是同一版本。看看connect-mongo的readme。 修改如下试试: 将 var mongoStore = require(“connect-mongo”); 改为var mongoStore = require(“connect-mongo”)(express);
从z.cn那里买到这本书的,本书内容正是我想要的。因为刚接触js后端,所以操作基本上是按照书上的代码进行书写的。我也是今天才接触Express框架,发现在书本的有个地方跑不通,特在此向作者请教。在100页5.4.4片段视图这节里面,按照书上的代码返回的信息是:partial is not defined
。经网上查找,发现是Express更新到3.x以后有所修改。因为刚接触,所以找不到替代的办法,希望作者能把某些修改后的东西在博客里更新一下,因为本书面向的是初学者。
好书!正在读。现在遇到了一个问题,第五章第四节5.4.4中partial is not defined。在网上查了一下可能是我安装的ejs版本是3.0,已经把partial函数去掉了,现在用include。但是不知道include用法啊 ,尤其是加入两个参数的时候。和partial 用法不一样啊。求指导。另外,在哪里能找到相应的文档啊?
先安装一个插件就好了。node npm install express partial .然后引入 var express = require(‘express’) ,partials = require(‘express-partials’); var app = express();
app.configure(function(){ app.use(partials());
@HJstart 我也看了那本书 说句心里话这个是没办法的事情,nodejs发展也不算慢,有版本之间的冲突很正常,如果是小问题的话能自行解决的话也是对自己的提升,当然大问题的话最好还是找一个相对官方的地方做更正。