作为一种强大的服务端开发技术,Node.js最本职的工作还是开发Web应用,下面介绍一下如何使用Node.js的核心模块来开发一个HTTP服务器,示例如下:

/**
 * Created by Administrator on 2015/3/25.
 */

//1.获取内嵌的http模块(提供http服务器和客户端)
var http = require('http');

//2.创建HTTP服务器
var server = http.createServer(function(req,res){
    if(req.url == '/'){ //请求主页
       console.log(req.getAllResponseHeaders);
        res.writeHead(200,{
            'Content-type':"text/html"});
        res.write('<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'
            +'床前明月光');
        res.end();
    }else {
        res.writeHead(404,{
            'Content-type':"text/html"});
        res.write('<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'
            +'错误404:网页没找到');
        res.end();
    }
});

//3.启动Http服务器
server.listen(3000,function(){
    console`````
log("正在监听3000端口");
});

如上述代码,Node.js作为HTTP服务器一般情况下都有三个步骤:

  1. 使用核心模块http模块来提供http服务端和客户端;
  2. 创建一个HTTP服务器(回调函数里的req和res就是PHP、JSP里的request和response,一个接受客户端请求,一个是服务器响应);
  3. 用创建的HTTP服务器监听一个端口,运行它。
上面就是使用Node.js的核心模块开发http服务器的一般过程,但现在在Node的各大社区有很多开源且免费的框架可用,如著名的Express等。