nodejs解析url参数的三种方法

Posted saintdingspage

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nodejs解析url参数的三种方法相关的知识,希望对你有一定的参考价值。

const myserver = require("http");
const urlib = require("url");
var myfs = require("fs");
myserver.createServer(function (req,res)
    console.log(req.url);
    res.write("there is a game of love"+"\\n");
    var params =;
    if (req.url.indexOf(?)!==-1)
    
        params = req.url.split("?");
        console.log(params);
        params = params[1].split("&");
        for(var $i=0;$i<params.length;$i++)
        
            var myitem = params[$i].split("=");
            res.write(myitem[0]+"==========="+myitem[1]+"\\n");
        
    
    else
    
        res.write(req.url);
    
    res.end();
).listen(8090);

输出结果:

技术图片

  • require(‘url‘)模块
const myserver = require("http");
const urlib = require("url");
myserver.createServer(function (req,res)
    var myobj = urlib.parse(req.url,true);
    var name = myobj.query.name;
    var age  = myobj.query.age;
    var name  = myobj.query.name;
    console.log(age);
    console.log(name);
    res.write("aaa");
    res.end();
).listen(8090);

输出结果:

技术图片

这里比较奇怪,最后的两个undefined其实还是分别输出name和age字段,但由于内存已经释放,所以输出了undefined

  • querystring
const myserver = require("http");
const querystring = require("querystring");
var age=null;
var name  =null;
myserver.createServer(function (req,res)
    var myobj = querystring.parse(req.url.split("?")[1]);

    if (myobj)
    
       res.write(myobj.name);
       res.write(myobj.age);
    
    else
    
        res.write("aaa");
    
    res.end();
).listen(8090);

输出结果

技术图片

 

以上是关于nodejs解析url参数的三种方法的主要内容,如果未能解决你的问题,请参考以下文章

Python 解析参数的三种方法

路由传参的三种方法

Python语言命令行参数解析接收参数执行脚本的三种方法

nodejs 学习六 express 三种查询url参数方法

小程序跨页面传递data数据的三种方法

jquery mobile changepage的三种传参方法介绍