- Node.js 教程
- Node.js - 主页
- Node.js - 简介
- Node.js - 环境设置
- Node.js - 第一个应用程序
- Node.js - REPL 终端
- Node.js - 包管理器 (NPM)
- Node.js - 回调概念
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 缓冲区
- Node.js - 流
- Node.js - 文件系统
- Node.js - 全局对象
- Node.js - 实用模块
- Node.js - Web 模块
- Node.js - Express 框架
- Node.js - RESTFul API
- Node.js - 扩展应用程序
- Node.js - 打包
- Node.js - 内置模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用的资源
- Node.js - 讨论
Node.js - 请求对象
req对象表示 HTTP 请求,并具有请求查询字符串、参数、正文、HTTP 标头等属性。
请求对象属性
以下是与请求对象关联的几个属性的列表。
先生。 | 属性及说明 |
---|---|
1 |
请求程序 此属性保存对使用中间件的 Express 应用程序实例的引用。 |
2 |
请求基址 挂载路由器实例的 URL 路径。 |
3 |
请求体 包含请求正文中提交的数据的键值对。默认情况下,它是未定义的,当您使用正文解析中间件(例如body-parser)时会填充它 |
4 |
请求cookies 当使用 cookie-parser 中间件时,此属性是一个包含请求发送的 cookie 的对象。 |
5 |
要求新鲜 指示请求是否“新鲜”。它与 req.stale 相反。 |
6 |
请求主机名 包含“Host”HTTP 标头中的主机名。 |
7 |
请求IP 请求的远程IP地址。 |
8 |
请求ips 当信任代理设置为 true 时,此属性包含“X-Forwarded-For”请求标头中指定的 IP 地址数组。 |
9 |
请求原始 URL 这个属性很像req.url;但是,它保留了原始请求 URL,允许您自由重写 req.url 以用于内部路由目的。 |
10 |
请求参数 包含映射到命名路由“参数”的属性的对象。例如,如果您有路由 /user/:name,则“name”属性可用作 req.params.name。该对象默认为 {}。 |
11 |
请求路径 包含请求 URL 的路径部分。 |
12 |
请求协议 使用 TLS 请求时的请求协议字符串“http”或“https”。 |
13 |
请求查询 包含路由中每个查询字符串参数的属性的对象。 |
14 |
请求路由 当前匹配的路由,一个字符串。 |
15 |
要求安全 如果建立了 TLS 连接,则为 true 的布尔值。 |
16 |
req.signedCookies 使用 cookie 解析器中间件时,此属性包含请求发送的已签名 cookie、未签名且可供使用的 cookie。 |
17 号 |
请求陈旧 指示请求是否“陈旧”,与 req.fresh 相反。 |
18 |
请求子域 请求域名中的子域数组。 |
19 |
请求.xhr 如果请求的“X-Requested-With”标头字段是“XMLHttpRequest”,则为 true 的布尔值,表示该请求是由客户端库(例如 jQuery)发出的。 |
请求对象方法
请求接受(类型)
req.accepts(types)
此方法根据请求的 Accept HTTP 标头字段检查指定的内容类型是否可接受。以下是一些例子 -
// Accept: text/html req.accepts('html'); // => "html" // Accept: text/*, application/json req.accepts('html'); // => "html" req.accepts('text/html'); // => "text/html"
请求.get(字段)
req.get(field)
该方法返回指定的HTTP请求头字段。以下是一些例子 -
req.get('Content-Type'); // => "text/plain" req.get('content-type'); // => "text/plain" req.get('Something'); // => undefined
请求.is(类型)
req.is(type)
如果传入请求的“Content-Type”HTTP 标头字段与 type 参数指定的 MIME 类型匹配,则此方法返回 true。以下是一些例子 -
// With Content-Type: text/html; charset=utf-8 req.is('html'); req.is('text/html'); req.is('text/*'); // => true
req.param(名称[,默认值])
req.param(name [, defaultValue])
此方法返回参数名称(如果存在)的值。以下是一些例子 -
// ?name=tobi req.param('name') // => "tobi" // POST name=tobi req.param('name') // => "tobi" // /user/tobi for /user/:name req.param('name') // => "tobi"