当前位置: 首页 > 后端技术 > Node.js

expressrequest对象介绍

时间:2023-04-03 23:15:48 Node.js

request对象的生命周期(通常传递给回调方法,意思是你可以随便命名,通常命名为req或request)是从一个http.IncomingMessage的实例开始的,其中之一节点的核心对象。Express添加了一些额外的功能。让我们看一下请求对象上最有用的属性和方法(Node中的req.headers和req.url除外,它们都是Express添加的)。req.params包含映射到指定路由的“参数”属性的对象的对象。例如,如果您有路由/user/:name,则“name”属性可用作req.params.name。该对象默认为{}。req.query是一个包含以键值对存储的查询字符串参数的对象(通常称为GET请求参数)req.body是一个包含POST请求参数的对象。之所以这样命名是因为POST请求参数是在REQUEST文字中传递的,而不是像查询字符串是在URL中传递的。为了使req.body可用,中间件需要能够解析请求文字内容类型,我们将在第10章中详细介绍。req.route有关当前匹配路由的信息。主要用于路由调试。req.cookies/req.singnedCookies包含从客户端传递过来的cookie值的对象。req.headers从客户端收到的请求标头。req.accepts([types])用于确定客户端是否接受指定类型或类型集的便捷方法(可选类型可以是单个MIME类型,如application/json,逗号分隔的集合,或数组).编写公共API的人对这种方法很感兴趣。假设浏览器默认总是接受HTML。req.ip客户端的IP地址。req.path请求路径(不包含协议、主机、端口或查询字符串)。req.host返回客户端报告的主机名的便捷方法。此信息可以伪造,因此不应将其用于安全目的。req.secure一个方便的属性,如果连接是安全的,它将返回true。相当于req.protocol==='https'。