使用Node后端处理网页GET请求

后端代码

var http = require('http');
var fs = require('fs');
var url = require('url');


// 创建服务器
http.createServer(function (request, response) {

    // 解析请求,包括文件名
    var pathname = url.parse(request.url).pathname;
    var RTA = decodeURI(request.url);
    console.log("客户端请求的完整 URL  /   " + RTA);

    if (RTA === "/favicon.ico") {
        //如果请求网页图标,则忽略
    } else {
        //  URLparame URL中的参数部分
        var URLparame = url.parse(request.url, true).query;

        // 从文件系统中读取请求的文件内容
        fs.readFile(pathname.substr(1), function (err, data) {
            if (err) {
                // 输出错误
                console.log(err);
                response.writeHead(404, {
                    'Content-Type': 'text/html'
                });
            } else {
                // 响应请求
                response.writeHead(200, {
                    'Content-Type': 'text/html'
                });
                // 响应文件内容
                if (RTA === "/index.html") {
                    // 如果仅请求网页域名,立刻输出请求的文件名
                    response.write(data.toString());
                    //否则分析请求参数
                } else {
                    // 获取URLparame 具体参数
                    var uid = URLparame.LoginName;
                    var psw = URLparame.LoginKey;
                    var che = URLparame.LoginChe;
                    //输出请求信息
                    console.log("URL中的参数值    LoginName /  " + uid);
                    console.log("URL中的参数值    LoginKey /   " + psw)
                    console.log("URL中的参数值    LoginChe /   " + che)

                    if (uid === 1) {
                        console.log("处理程序:", "我该干啥?");
                    }
                }
            }
        });
    }
}).listen(8080);

// 控制台会输出以下信息
console.log('Server running at http://127.0.0.1:8080/');

猜你喜欢

转载自www.cnblogs.com/Anbrera/p/10346708.html