Node.js开发手册(一)x

时间:2022-06-22 09:04:02 来源:网友投稿

 Node.js 开发手册(一)

 Node.js 开发手册(一)

 作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs

 一、Node.js 简介 Node.js 由于其简洁性而受到广泛关注。与 PHP 或 ASP 不同,后者在 Web 服务器和代码间没有间隔,也不需要自定义大量的配置文件。使用 Node.js,我们可以创建服务器,自定义它,在代码层交付所有的内容。

  二、构建路由器 为了交付 Web 内容,我们需要使 URI 有效。为了使得开发效率更高,这里我向大家推荐两款工具,它可以帮助 Node.js 程序在改动后自动部署生效,简化了开发。工具如下:

  1. Hotnode Hotnode 是一个包,可以让代码在修改保存后实现自动重载。其特征有两点:

 一是当文件发生改变后,自动重载 Node.js 代码。

 二是会检测当前目录及其子目录。

  2. Supervisor node-supervisor 也是一个包,它可以运行 Node.js 程序,观察代码的变动情况,自动重新热部署,无需担心内存泄漏以及中间模块引用的清除等。

 Hotnode 和 Supervisor 两者的功能差不多,不过 Hotnode 先于 Supervisor 差不多一年发布。

 两者的安装都很简单,以 supervisor 为例,安装如下:

 $ sudo npm install supervisor -g

 三、测试 编写一个 Node.js 程序,名为 server.js,内容如下:

 // server.js

 var http = require("http");

 http.createServer(function(req, res){

 res.writeHead(200, {"Content-Type": "text/html"});

 res.end("Woohoo!");

 }).listen(8080);

  用 supervisor 执行此程序,命令为:

 $ supervisor server.js

 用浏览器访问地址:http://localhost:8080/ 会显示 Woohoo!

  四、修改代码 我们可以使用 path 模块提取路径的基本名字,用 decodeURI 在客户端解码任何URI 编码。内容如下:

  // server.js

 var http = require("http");

 var path = require("path");

  var pages = [

 {route: "", output:"Woohoo!"},

 {route: "about", output:"A simple routing with Node example"},

 {route: "another page", output: function(){return "Here\"s " + this.route;}},

 ];

  http.createServer(function(req, res){

 var lookup = path.basename(decodeURI(req.url));

 pages.forEach(function(page){

 if(page.route===lookup){

 res.writeHead(200, {"Content-Type": "text/html"});

 res.end(typeof page.output === "function" ? page.output() : page.output);

 }

 });

 if(!res.finished){

 res.writeHead(404);

 res.end("Page Not Found!");

 }

 }).listen(8080);

  在终端上可以看到,代码是实时被 supervisor 热部署了的。

 在浏览器访问 http://localhost:8080/aboutasd

 会提示:Page Not Found!

  在浏览器访问 http://localhost:8080/about 会提示:A simple routing with Node example

推荐访问:手册 开发 Node

版权所有:天海范文网 2010-2024 未经授权禁止复制或建立镜像[天海范文网]所有资源完全免费共享

Powered by 天海范文网 © All Rights Reserved.。鲁ICP备10209932号