本文概要
- Express.js Request对象属性
- 请求对象的方法
- req.accepts(types)
- req.get(field)
- req.is(type)
- req.param(name[,defaultValue])
Express.js请求和响应的对象是其在Express应用程序使用的回调函数的参数。
所述express.js请求对象表示该HTTP请求,并且具有属性请求查询字符串,参数,body,HTTP报头,等等。
句法:
app.get('/',function (req,res) {
// --
})
Express.js Request对象属性
下表指定与某些请求对象相关联的属性。
索引 | 属性 | 描述 |
---|---|---|
1. | req.app | 这是用于保存到使用中间件的Express应用程序的实例的引用。 |
2. | req.baseurl | 它规定在其上安装一台路由器实例的URL路径。 |
3. | req.body | 它包含在请求主体提交的数据的键值对。默认情况下,它是不确定的,当你用body,解析等中间件身体解析器填充。 |
4. | req.cookies | 当我们使用cookie的解析器的中间件,这个属性是包含请求发送的cookie的对象。 |
5. | req.fresh | 它指定该请求是“新鲜”。它是req.stale相反。 |
6. | req.hostname | 它包含了从“主机” HTTP标头的主机名。 |
7. | req.ip | 它指定请求的远程IP地址。 |
8. | req.ips | 当信任代理设置为true,则此属性包含IP地址的数组中指定的?x-forwarded-for?请求报头。 |
9. | req.originalurl | 此属性是很像req.url;然而,它保留了原请求的URL,让你随意改写req.url内部路由的目的。 |
10. | req.params | 包含属性的对象映射到指定的路线?参数?例如,如果你有路径/用户/:名,那么“名”属性可作为req.params.name。该目的默认为{}。 |
11. | req.path | 它包含请求URL的路径部分。 |
12. | req.protocol | 请求协议字符串“http”或“https”开头当与TLS请求。 |
13. | req.query | 包含在路由每个查询字符串参数的属性的对象。 |
14. | req.route | 当前匹配的路线,一个字符串。 |
15. | req.secure | 布尔如果建立一个TLS连接这是真的。 |
16. | req.signedcookies | 当使用cookie的解析器的中间件,此属性包含签署的请求而发送的cookie,无符号和准备使用。 |
17. | req.stale | 它表明该请求是否是“陈旧”,并且是req.fresh相反。 |
18. | req.subdomains | 它代表子域的所述请求的域名的数组。 |
19. | req.xhr | 一个布尔值,为真,如果请求的“x-requested-with”报头字段是“XMLHttpRequest”,表明该请求是由客户端库发出如jQuery |
请求对象的方法
以下是一些通常使用请求对象的方法列表:
req.accepts(types)
此方法用于检查指定的内容类型是否是可接受的,基于所述请求的接受HTTP标头字段。
例子:
req.accepts('html');
//=>?html?
req.accepts('text/html');
// => ?text/html?
req.get(filed)
此方法返回指定的HTTP请求报头字段。
例子:
req.get('Content-Type');
// => "text/plain"
req.get('content-type');
// => "text/plain"
req.get('Something');
// => undefined
req.is(type)
此方法返回如果进入的请求的“内容类型” HTTP标头字段由类型参数指定的MIME类型匹配真。
例子:
// With Content-Type: text/html; charset=utf-8
req.is('html');
req.is('text/html');
req.is('text/*');
// => true
req.param(name[,defaultValue])
此方法用于获取PARAM NAME的存在的值时。
例子:
// ?name=sasha
req.param('name')
// => "sasha"
// POST name=sasha
req.param('name')
// => "sasha"
// /user/sasha for /user/:name
req.param('name')
// => "sasha"
评论前必须登录!
注册