nodejs03-GET数据处理
数据请求:---
前台:form ajax jsonp
后台:一样
请求方式:
1.GET 数据在URL中
2.POST 数据在请求体中
请求数据组成:
头--header:url,头信息
身子--content:post信息
GET数据解析
方法一:querystring模块
1.是什么?
node中处理字符串的模块,可以将字符串序列化,反序列化,转义/反转译.
常用的方法用querystring.stringify(json),querystring.parse(str),
querystring.escape(str),querystring.unescape(str);
2.如何使用
const querystring=require("querystring");
//序列化 querystring.stringify()
var str1={name:"linda",age:24,job:'hr'};
//1个参数
console.log(querystring.stringify(str1));
//2个参数
console.log(querystring.stringify(str1,'.'));
//3个参数
console.log(querystring.stringify(str1,'.',':'));
//反序列化
var str2="name=linda&age=24&job=HR";
//1个参数
console.log(querystring.parse(str2));
//2个参数
str2='name=linda.age=24.job=HR';
console.log(querystring.parse(str2,'.'));
//3个参数
str2='name:linda.age:24.job:HR';
console.log(querystring.parse(str2,'.',':'));
//转译
var str3='<hello world>';
console.log(querystring.escape(str3));
//反转译
var str4='%3Chello%20world%3E';
console.log(querystring.unescape(str4));
方法二:URL模块
1.是什么?
node中用来处理http请求地址(url)的模块,可以解析,生成,拼接url;
常用方法:urlLib.parse(),urlLib.format(),urlLib.resolve();
2.怎么用?
const urlLib=require("url");
var url="http://www.baidu.com/index.html/?name=round&pass=124567";
//解析url
//1个参数
console.log(urlLib.parse(url));
//2个参数,第二参数表示将url中的query部分解析成json格式
console.log(urlLib.parse(url,true));
//第三个参数等于true时,该方法可以正确解析不带协议头的URL
console.log(urlLib.parse(url,true,true));
//生成url
console.log(urlLib.format({
protocol:"http",
host:"www.php.com",
pathname:"index.html/",
// query:"name=acde&pass=135456",
search:"?name=acde&pass=135456"
}))
//http://www.php.com/index.html/?name=acde&pass=135456
//拼接url
console.log(urlLib.resolve("http://www.baidu.com/","index.html/?name=acde&pass=135456"));
//http://www.baidu.com/index.html/?name=acde&pass=135456