Express框架请求处理机制

Posted 星河梦~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Express框架请求处理机制相关的知识,希望对你有一定的参考价值。

引言

Express框架是基于Node平台的一个开发框架,使用Express框架构建后台服务器程序,极大的提高了开发效率。

请求处理机制

请求对象

请求对象request,是客户端向服务器发送的请求

request 对象表示 HTTP 请求,包含了请求查询字符串,参数,内容,HTTP 头部等属性。

常见属性有:

(1)request.params:用于获取路由参数

(2)request.query:用于获取get请求的查询字符串参数

补充:

url传值:

url?参数名1=参数值1&参数名2=参数值2

'?'是url地址和参数之间的分隔符
'&'是参数之间的分隔符

例如:

http://localhost:8080/login?username=张三&password=123456

(3)request.body:用于获取post请求的请求体内容

(4)reuqest.cookies:一个对象,包含从和互动传递来的cookie信息

(5)request.headers:一个对象,从客户端接收到的请求报头

(6)request.path:获取请求路径,不包含协议,端口,查询字符串

(7)request.url:获取请求路径+查询字符串

响应对象

响应对象response,是服务器向客户端发送的请求

response 对象表示 HTTP 响应,即在接收到请求时向客户端发送的 HTTP 响应数据。

常见属性有:

(1)res.send(options):向客户端发送响应数据,可以是一个对象(key–value)

(2)res.render(视图名,数据):页面的文件名(不含拓展名),‘数据’是向页面发送的数据,可以用于渲染页面

(3)res.redirect([status],url):重定向浏览器,默认状态码:302,url是路由里面的路径,不是视图里的路径

get请求处理

有关get请求,在前面的文章中已经提及,想要了解请点这里

(1)客户端

<a href="http://localhost:8080/test/11/2">测试</a>

(2)服务器

router.get('/test/:id/:userNo',(req,res)=>{
	res.send(req.params)
})

响应页面:

post请求处理

(1)客户端

<form action="http://localhost:8080/login" method="post">
	<lable>用户名:
		<input type="text" name="userName">
	</lable>
	<lable>密码:
		<input type="password" name="password">
	</lable>
	<button type="submit">登录</button>
	<button type="resey">重置</button>
</form>

(2)服务器

router.post('login',(req,res)=>{
	let name=req.body.userName
	let pwd=req.body.password
	res.send('用户名:'+name+'\\n密码:'+pwd)
})


响应页面:

以上是关于Express框架请求处理机制的主要内容,如果未能解决你的问题,请参考以下文章

Node教程——Express框架简约教程

Express

Express框架请求与响应Express页面

Express框架

Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段

NodeJS 入门第三天(Express框架)