get请求参数
参数被放置在浏览器地址栏中
例子:http://localhost/3000/?name=zhangsan&age=20
获取参数req.url
字符串截取的方式?稍微麻烦一点。
内置模块url
内置模块引入const url=require(‘url’)
Url.parse(req.url)可以获取
Console.log(url.parse(req.url))打印对象URL对象search:?Name=zhangsan&age=20
Query:name=zhangsan&age=20
Pathname:‘/index’ 不包含请求参数的请求地址 做地址判断
Url.parse(参数1,req.url表示要解析的地址,参数2=true 将查询的参数解析成对象的形式)
再次打印query已经不是字符串了已变色
Let params = url.parse(req.url,true).query 处理成对象模式
Req.headers(请求报文头)
获取请求报文信息console.log(req.headers([‘accept’])
设置请求报文头 Res.writeHead(200,{‘content-type’:’text/html;charset=utf8’,’hello’:’world’});
获取请求方式:req.method console.log(req.method)
Post请求参数
Post参数是通过事件的方式接收的
Data 当请求参数传递的时候触发data事件
End 当参数传递完成的时候触发end事件
req.on(‘data’,()=》 {});
Req.on(‘end’,() => {});
post请求依靠内置模块querystring querystring.parse将字符转换成对象格式
引入内置模块 Const querystring = require(‘querystring’)
格式输出querystring.parse(postParams) Console.log(querystring.parse(postParams));对象格式const querystring = require(‘querystring’)
App.on(‘request’,(req,res) => {
let postData = ‘’;
// j监听参数传输事件
Req.on(‘data’, (chunk) => postData += chunk);
//监听参数传输完毕事件
Req.on(‘end’,() => {
Console.log(querystring.parse(postData));
});