请求参数问题

获取地址url 

 url.parse可以进行解析成url对象。把里面的内容解析成键值对形式的数值保存内容。

加入第二个参数true. 将查询参数解析成对象形式,也就是url对象里面的query将变成一个对象,里面保存着参数内容。调用query需要

用url.parse(req.url,true).query调用

调用query里面的参数内容的值,需要用(url.parse(req.url,true).query).age可以把url.parse(req.url,true).query对象赋值给一个变量params.然后直接

params.age或者params.name.

怎么得到参数的具体某个值呢?可以采用下面方法:因为整体是个对象。赋值给params,直接调用params.age或者params.name等。 

那如何用于判断条件呢?可以把后面的 url.parse(req.url,true)对象进行解构。直接解构出里面的query和pathname

//用于创建网站服务器的模块
const http=require("http");
//用于处理url地址
const url=require("url");
//app对象就是网站服务器对象
const app=http.createServer();
//当客户端有请求来的时候
app.on('request',(req,res)=>{
	//获取请求方式
	//req.method
	//获取请求地址
	//req.url
	//获取请求报文
	//req.headers
	res.writeHead(200,{
		//这第二个参数是个对象保存有响应头里面的信息
		'content-type':'text/html;charset=utf-8'
	});
	// console.log(req.headers['host']);
	console.log(req.url);
	//第一个参数是要解析的url地址
	//第二个参数是将查询参数解析成对象形式。
	// 可以这样做console.log(url.parse(req.url,true).query);
	let {query,pathname}=url.parse(req.url,true);
	console.log(query.age);
	console.log(query.name);
	if(pathname=="/index"||pathname=="/"){
	res.end("<h2>欢迎来到首页</h2>");
	}
	else if(pathname=="/list"){
		res.end("welcome to listpage");
	}else{
		res.end("Not Found");
	}
// 	if(req.method=="POST"){
// res.end('post')
// 	}
// 		else if(req.method=="GET"){
// res.end('get')
// 		}
	// res.end('<h2>Hello user<h2>');
});
app.listen(3000);
console.log("网站服务器启动成功yaya");

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值