如何在Node.js上build立一个网站?

经过几年的PHP编程,我刚刚开始深入Node.js ,我想为我的下一个项目构build一个Node.js应用程序,但是我不知道该怎么做。

是否有任何Node.js jumpstart的资源?

提前致谢!

您应该将Node.js想象成某种Apache + PHP,这意味着您可以使用Node为您的网站和Web服务器编程。

节点与您的基本PHP有一些重要的区别,它是平坦的,asynchronous的,非阻塞的。 你必须学会​​如何处理callback,不要阻塞事件循环和其他事情。

你应该做的就是尝试在开始学习Node的基础知识,下面是一些很棒的资源: https : //stackoverflow.com/tags/node.js/info (我最喜欢的是nodetuts.com和优秀的书由它的作者,手中的节点)。

学完基础知识后,如果您的应用程序专注于实时,则可以发现Express作为Web框架和Socket.IO非常有用。

我想你正在寻找一个node.js跳转开始build立一个有意义的网页与节点。 看看express ,这是一个节点的web框架。 他们提供了一个很好,但很短的教程(在指导下)。

您需要在Web服务器上运行Node.js。 基本上,你需要一个VPS或专用服务器,你可以完全控制。 [PHP通过标准的Web服务器Apache运行。 Node.js networking服务器。]

或者你会find一个Node.js主机为你做。

另一个select是使用类似Knockout.js(http://knockoutjs.com/),并让页面使JSONP调用到Node.js服务器。 使用Node向客户端发送JSON非常简单,因为它是服务器上的JavaScript。 在客户端上使用框架使得基于该JSON数据创builddynamic页面变得非常简单。

缺点是旧版浏览器没有优雅的降级。 优点是一个潜在的快速网站与伟大的AJAX内置的权利,从一开始。

以下是使用Node生成JSONP响应的示例代码:

function writeJsonpResponse(res, jsonpcallback, obj) { var serialized = JSON.stringify(obj); res.writeHead(200, {'Content-Type': 'application/javascript'}); res.write(jsonpcallback + '(' + serialized + ');'); res.end(); } 

Node.js基本上是你的networking服务器,它将取代Apache,所以你唯一能够运行Nodejs的主机就是一个专门的服务器或者一个你需要安装和运行nodejs的云实例。 运行node.js的机器需要有一个指向它的域名,或者你可以访问服务器的唯一方法是通过它的IP地址,这就是你的本地主机。