NodeJS URL 查询字符串 querystring
模块概述
在 nodejs 中,提供了 querystring 这个模块,用来做 url 查询参数的解析,使用非常简单。
模块总共有四个方法,绝大部分时,我们只会用到 .parse() 、 .stringify() 两个方法。剩余的方法,感兴趣的同学可自行查看文档。
- .parse() :对 url 查询参数(字符串)进行解析,生成易于分析的 json 格式。
- .stringif() :跟 .parse() 相反,用于拼接查询查询。
querystring.parse(str[, sep[, eq[, options]]])
querystring.stringify(obj[, sep[, eq[, options]]])
查询参数解析:querystring.parse()
参数:querystring.parse(str[, sep[, eq[, options]]])
第四个参数几乎不会用到,直接不讨论. 第二个,第三个其实也很少用到,但某些时候还是可以用一下。直接看例子
var querystring = require('querystring');
var str = 'nick=casper&age=24';
var obj = querystring.parse(str);
console.log(JSON.stringify(obj, null, 4));
输出如下
{
"nick": "casper",
"age": "24"
}
再来看下 sep
、 eq
有什么作用。相当于可以替换 &
、 =
为自定义字符,对于下面的场景来说还是挺省事的。
var str1 = 'nick=casper&age=24&extra=name-chyingp|country-cn';
var obj1 = querystring.parse(str1);
var obj2 = querystring.parse(obj1.extra, '|', '-');
console.log(JSON.stringify(obj2, null, 4));
输出如下
{
"name": "chyingp",
"country": "cn"
}
查询参数拼接:querystring.stringify()
querystring.stringify(obj[, sep[, eq[, options]]])
没什么好说的,相当于 parse
的逆向操作。直接看代码
var querystring = require('querystring');
var obj1 = {
"nick": "casper",
"age": "24"
};
var str1 = querystring.stringify(obj1);
console.log(str1);
var obj2 = {
"name": "chyingp",
"country": "cn"
};
var str2 = querystring.stringify(obj2, '|', '-');
console.log(str2);
输出如下
nick=casper&age=24
name-chyingp|country-cn
相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: NodeJS 域名解析 dns
下一篇: 彻底找到 Tomcat 启动速度慢的元凶
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论