nodejs03-GET数据处理

时间:2023-01-14 05:47:06

数据请求:---

前台: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