node基础入门

http模块

const http = require("http");
var server = http.createServer(function(request,response){
	switch(request.url){
		case "/1.html":
			response.write('1.html');
			break;

		case "/2.html":
			response.write("bbbbbbb");
			break;

		default:
			response.write("404");
	}
	response.end();
});
server.listen(8080);

  

fs模块

const fs = require("fs");

fs.readFile("1.html",function(err,data){
    if(err){
        console.log("no such file");
    } else {
        console.log(data.toString());
    }
});

fs.writeFile("a.txt","this is content",function(err){
    console.log(err);
});

  

querystring模块

//使用querystring处理get请求参数
const http = require("http");
const querystring = require("querystring");

var server = http.createServer(function(request,response){
    var data = {};
    if(request.url.indexOf('?')!=-1){
        // /index.html?name=abc&age=20
        var arr = request.url.split("?");
        var url = arr[0];  // url = /index.htlm
        data = querystring.parse(arr[1]);    // data = {name:"abc",age:20}
    } else {
        var url = request.url;
    }

    console.log(url,data);
});

server.listen(8080);

  

url模块

接收get请求参数

//使用url处理get请求参数
const http = require("http");
const urlLib = require("url");

var server = http.createServer(function(request,response){
    var obj = urlLib.parse(request.url,true);//不加true的话,不会处理请求的参数形式
    //   /abc/index.php?name=abc&age=30
    var url = obj.pathname;   //url = /abc/index.php
    var query = obj.query;	  // query = {name:"abc",age:30}
    console.log(url,query);
});

server.listen(8080);

接收post请求参数

//接收post参数
const http = require("http");

var server = http.createServer(function(request,response){
    var data = "";
    //data 每当有一部分数据到达的时候触发
    request.on("data",function(tmp){
        data += tmp;
    });

    //数据接收完毕时触发
    request.on("end",function(){
        console.log(data);
    });

    console.log("接收到的post参数:",data);
});

server.listen(8080);

  

前几个模块综合使用搭一个简易服务器:

const http = require("http");
const fs = require("fs");
const urlLib = require("url");
const querystring = require("querystring");

var server = http.createServer(function(request,response){
    //接收get请求
    var obj = urlLib.parse(request.url,true);
    var url = obj.pathname;
    const GET = obj.query;

    //接收post请求 
    var tmp = ""; //使用字符串来保存不是最好的方式,提示:接收文件
    request.on("data",function(data){
        tmp += data;
    });
    request.on("end",function(){
        const POST = querystring.parse(tmp);     

        //文件处理
        fs.readFile("./www/"+ url,function(err,data){
            if(err){
                response.write("404");
            } else {
                response.write(data);
            }
            response.end();
        });

        //服务器端打印相关参数
        console.log("       请求资源:",url);
        console.log("    GET请求参数:",GET);
        console.log("   POST请求参数:",POST);
    });     
}); 

server.listen(8080);

  

 

posted @ 2018-05-30 14:55  寻觅beyond  阅读(187)  评论(0)    收藏  举报
返回顶部