Express.js 请求对象

2024 年 8 月 29 日 | 阅读 3 分钟

Express.js 请求和响应对象是 Express 应用程序中使用的回调函数的参数。

express.js 请求对象表示 HTTP 请求,并具有用于请求查询字符串、参数、正文、HTTP 标头等的属性。

语法


Express.js 请求对象属性

下表指定了与请求对象关联的一些属性。

索引性质描述
1.req.app这用于保存对使用中间件的 express 应用程序实例的引用。
2.req.baseurl它指定了路由实例挂载到的 URL 路径。
3.req.body它包含在请求正文中提交的数据的键值对。 默认情况下,它是未定义的,并且在使用 body-parser 等 body-parsing 中间件时会被填充。
4.req.cookies当我们使用 cookie-parser 中间件时,此属性是一个对象,其中包含请求发送的 cookie。
5.req.fresh它指定请求是“新鲜的”。它是 req.stale 的相反词。
6.req.hostname它包含来自“host”http 标头的 hostname。
7.req.ip它指定请求的远程 IP 地址。
8.req.ips当 trust proxy 设置为 true 时,此属性包含在 ?x-forwarded-for? 请求标头中指定的 IP 地址数组。
9.req.originalurl此属性与 req.url 相似; 但是,它保留了原始请求 URL,允许您为了内部路由目的自由地重写 req.url。
10.req.params一个对象,包含映射到命名路由 ?参数? 的属性。 例如,如果您有路由 /user/:name,则“name”属性可用作 req.params.name。此对象默认为 {}。
11.req.path它包含请求 URL 的路径部分。
12.req.protocol请求协议字符串,“http”或“https”(当使用 TLS 请求时)。
13.req.query一个对象,包含路由中每个查询字符串参数的属性。
14.req.route当前匹配的路由,一个字符串。
15.req.secure如果建立了 TLS 连接,则为 true 的布尔值。
16.req.signedcookies使用 cookie-parser 中间件时,此属性包含请求发送的已签名 cookie,未签名并可供使用。
17.req.stale它指示请求是否“过时”,并且是 req.fresh 的相反词。
18.req.subdomains它表示请求的域名中的子域数组。
19.req.xhr如果请求的“x-requested-with”标头字段为“xmlhttprequest”,则为 true 的布尔值,表明该请求是由诸如 jQuery 之类的客户端库发出的

请求对象方法

以下是常用请求对象方法列表

req.accepts (types)

此方法用于根据请求的 Accept HTTP 标头字段检查指定的 content types 是否可接受。

示例

req.get(field)

此方法返回指定的 HTTP 请求标头字段。

示例

req.is(type)

如果传入请求的“Content-Type”HTTP 标头字段与 type 参数指定的 MIME 类型匹配,则此方法返回 true。

示例

req.param(name [, defaultValue])

当存在参数名称时,此方法用于获取该参数的值。

示例

下一主题ExpressJS 响应