0
点赞
收藏
分享

微信扫一扫

node - querystring

龙驹书房 2022-06-24 阅读 58

querystring 是处理URL中参数的模块。

const queryStr = require('querystring')
console.log('111: ', queryStr) // 所有方法
/*
{
unescapeBuffer: [Function: unescapeBuffer],
unescape: [Function: qsUnescape],
escape: [Function: qsEscape],
stringify: [Function: stringify],
encode: [Function: stringify],
parse: [Function: parse],
decode: [Function: parse]
}
*/

 

querystring.parse(str,[seq],  [eq])

把一个URL查询字符串 str 解析成一个键值对的集合;

seq: 分隔键值对的子字符串 。默认值为 '&'

eq: 链接键值对的子字符串 。默认值为 '='

let url = 'name=lxc&age=20&height=&weight=120'
console.log(queryStr.parse(url))
// {
// name: 'lxc',
// age: '20',
// height: '',
// weight: '120'
// }

 

querystring.stringify(obj, [seq],  [eq])

此方法是 querystring.parse( ) 方法的逆向操作:

let o = {
username: 'lxc',
password: 20,
params: ['bar', 'foo']
}
console.log(queryStr.stringify(o))
//输出结果为 username=lxc&password=20&params=bar&params=foo

参数二和参数三分别表示:以seq分隔(默认以&分隔),key和value之间以eq链接(默认以= 链接key和value值)

let o = {
username: 'lxc',
password: 20
}
console.log(queryStr.stringify(o, ',', ':'))
// 输出结果为 username:lxc,password:20

 

querystring.escape(str)

对传入的字符串进行编码:

console.log(queryStr.escape('name=lxc&age=20'))
// ame%3Dlxc%26age%3D20

querystring.unescape(str)

对传入的含有%的字符串进行解码:

console.log(queryStr.unescape('name%3Dlxc%26age%3D20'))
// name=lxc&age=20

 


举报

相关推荐

0 条评论