node模块 QueryString参数处理

querystring.stringify({name:'kongdy',course:['aa','b']}) 可以将对象序列化,
返回生成结果为:name=kongdy&course=aa&course=b 
 1: querystring.stringify({name:'kongdy',course:['aa','b']},','); 第二个参数代表,将序列化后的字符串的拼接符号用第二个参数','来替代 
2: querystring.stringiy({name:'kongdy',course:['aa','b']},',',':'); 新增的第三个参数代将序列化后的字符串的键值对之间的符号用第三个参数':'代替 
3: querystring.stringiy({name:'kongdy',course:['aa','b']},',',':',option); 新增的第四个参数,有两个属性用来设置,encodeURIComponent用来设置解析/序列化的编码,maxKeys设置最大序列化键值对数量,设为0,则视为不限

 querystring.parse('name=kongdy&course=aa&course=b'); 用于反序列化可以将参数饭序列化成对象,跟stringify对应有三个重构方法 
1: querystring.parse('name=kongdy,course=aa,course=b',','); 解析的时候,键值对之间的拼接字符用第二个给定的参数','来进行解析 
2: querystring.parse('name:kongdy,course:aa,course:b',',',':'); 新增的第三个参数,在反序列化解析的时候,用给定的第三个参数':'进行解析 以上,如果没有解析成功会返回能够解析的半成品或者完整的原字符串。
3: querystring.parse('name=kongdy&course=aa&course=b','&','=',option); 新增的第4个参数与querystring.stringify()的4个参数的构造方法相同,但文档中并未记录maxKey,可能没有该参数。

转义:querystring.escape()
> querystring.escape('<博客>')
'%e5%8d%9a%e5%ae%a2'

反转义:querystring.unescape()
> querystring.unescape('%e5%8d%9a%e5%ae%a2')
'<博客>'

猜你喜欢

转载自blog.csdn.net/qq_24884955/article/details/80354402