通常用于处理http请求的url后面拼接的参数
1. parse 反序列化(将字符串参数解析成对象)
语法:querystring.parse(url字符串,参数连接符默认&,参数键值对连接符默认=,解码设置默认unescape解码)
const querystring = require("querystring");
const url = "http://localhost:8080/api/canda/user?username=青龙&password=123456&code=10086";
const url0 = url.split("?")[0];
const url1 = url.split("?")[1];
console.log("url0: ", url0); // 结果:http://localhost:8080/api/canda/user
console.log("url1: ", url1); // 结果:username=青龙&password=123456&code=10086
const result = querystring.parse(url1);
console.log(result); // 结果 {username: "青龙",password: "123456",code: "10086"};
2. stringify 序列化(将对象参数解析成字符串)
语法:querystring.stringify(url参数对象,参数连接符默认&,参数键值对连接符默认=,解码设置默认escape编码)
汉字参数会被编码,使用querystring.parse()方法,反序列化后自动解码
const querystring = require("querystring");
const obj = { username: "青龙", password: "123456", code: "10086" };
const result = querystring.stringify(obj);
console.log(result); // username=%E9%9D%92%E9%BE%99&password=123456&code=10086
3. escape 对url参数进行编码
语法:querystring.escape(需要编码字符串)
const querystring = require("querystring");
const url = "青龙";
const result = querystring.escape(url);
console.log(result); //结果: %E9%9D%92%E9%BE%99
4. unescape 对url参数进行解码
语法:querystring.unescape(需要解码字符串)
const querystring = require("querystring");
const url = "%E9%9D%92%E9%BE%99";
const result = querystring.unescape(url);
console.log(result); //结果:青龙
网友评论