美文网首页
Node.js Web 模块

Node.js Web 模块

作者: maoyaocsf | 来源:发表于2017-02-18 21:59 被阅读0次

    使用 Node 创建 Web 服务器

    var http = require('http');
    var fs = require('fs');
    var url = require('url');
    // 创建服务器
    http.createServer( function (request, response) {
    // 解析请求,包括文件名
    var pathname = url.parse(request.url).pathname;
    // 输出请求的文件名
    console.log("Request for " + pathname + " received.");
    // 从文件系统中读取请求的文件内容
    fs.readFile(pathname.substr(1), function (err, data) {
    if (err) {
    console.log(err);
    // HTTP 状态码: 404 : NOT FOUND
    // Content Type: text/plain
    response.writeHead(404, {'Content-Type': 'text/html'});
    }else{
    // HTTP 状态码: 200 : OK
    // Content Type: text/plain
    response.writeHead(200, {'Content-Type': 'text/html'});
    // 响应文件内容
    response.write(data.toString());
    }
    // 发送响应数据
    response.end();
    });
    }).listen(8080);
    // 控制台会输出以下信息
    console.log('Server running at http://127.0.0.1:8080/');

    在当前目录下创建index.html
    接着我们在浏览器中打开地址:http://127.0.0.1:8081/index.html

    使用 Node 创建 Web 客户端

    var http = require('http');
    
    // 用于请求的选项
    var options = {
       host: 'localhost',
       port: '8080',
       path: '/index.htm'  
    };
    
    // 处理响应的回调函数
    var callback = function(response){
       // 不断更新数据
       var body = '';
       response.on('data', function(data) {
          body += data;
       });
       
       response.on('end', function() {
          // 数据接收完成
          console.log(body);
       });
    }
    // 向服务端发送请求
    var req = http.request(options, callback);
    req.end();
    

    相关文章

      网友评论

          本文标题:Node.js Web 模块

          本文链接:https://www.haomeiwen.com/subject/wvyrwttx.html