本文概要
- 它能做什么
- 响应对象属性
- 响应对象的方法
- 响应Append方法
- 响应附件方法
- 响应Cookie的方法
- 响应ClearCookie方法
- 响应下载方法
- 响应End方法
- 响应格式方法
- 响应Get方法
- 响应JSON方法
- 响应JSONP方法
- 响应链接方法
- 响应位置的方法
- 响应重定向方法
- 响应Render方法
- 响应发送方法
- 响应SENDFILE方法
- 响应集合方法
- 响应状态的方法
- 响应类型的方法
Response对象(RES)指定其通过时,它得到一个HTTP请求的快速应用程序发送的HTTP响应。
它能做什么
- 它发送响应返回给客户端浏览器。
- 它有助于你把新的cookie值,这将写入到客户端浏览器(下跨域规则)。
- 一旦你res.send()或res.redirect()或res.render(),你不能再干,否则,就会出现未捕获的错误。
响应对象属性
让我们来看看response对象的某些属性。
指数 | 属性 | 描述 |
---|---|---|
1. | res.app | 它拥有到使用中间件的Express应用程序的实例的引用。 |
2. | res.headersSent | 它是一个布尔属性,指示是否该应用发送的HTTP标头的响应。 |
3. | res.locals | 它指定包含作用域到请求响应的局部变量的对象 |
响应对象的方法
以下是一些方法:
响应Append方法
句法:
res.append(field [,value])
此方法将指定值到HTTP响应报头字段。如果指定的值不那么合适此方法补救该意思。
例子:
res.append('Link',['<http://localhost/>','<http://localhost:3000/>']);
res.append('Warning','199 Miscellaneous warning');
响应附件方法
句法:
res.attachment([filename])
这种方法有利于你发送一个文件作为HTTP响应的附件。
例子:
res.attachment('path/to/js_pic.png');
响应Cookie的方法
句法:
res.cookie(name,value [,options])
此方法用于设置cookie名称值。该值可以是转换为JSON字符串或对象。
例子:
res.cookie('name','Aryan',{ domain: '.xyz.com',path: '/admin',secure: true });
res.cookie('Section',{ Names: [Aryan,Sushil,Priyanka] });
res.cookie('Cart',{ items: [1,2,3] },{ maxAge: 900000 });
响应ClearCookie方法
句法:
res.clearCookie(name [,options])
正如其名称所指定,所述clearCookie方法是用来清除name指定的cookie中。
例子:
设置cookie
res.cookie('name','Aryan',{ path: '/admin' });
要清除一个cookie:
res.clearCookie('name',{ path: '/admin' });
响应下载方法
句法:
res.download(path [,filename] [,fn])
该方法在路径中的文件传输作为“附件”,并执行浏览器以供下载提示用户。
例:
res.download('/report-12345.pdf');
响应End方法
句法:
res.end([data] [,encoding])
这种方法被用来结束响应处理。
例:
res.end();
res.status(404).end();
响应格式方法
句法:
res.format(object)
在接受HTTP头请求对象上此方法执行内容协商,当存在时。
例:
res.format({
'text/plain': function(){
res.send('hey');
},'text/html': function(){
res.send('
hey');
},'application/json': function(){
res.send({ message: 'hey' });
},'default': function() {
// log the request and respond with 406
res.status(406).send('Not Acceptable');
}
});
响应Get方法
句法:
res.get(field)
该方法提供了通过字段中指定的HTTP响应报头中。
例:
res.get('Content-Type');
响应JSON方法
句法:
res.json([body])
此方法返回JSON格式的响应。
例:
res.json(null)
res.json({ name: 'ajeet' })
响应JSONP方法
句法:
res.jsonp([body])
JSON格式的这个方法返回的响应采用JSONP支持。
例子:
res.jsonp(null)
res.jsonp({ name: 'ajeet' })
响应链接方法
句法:
res.links(links)
此方法通过将作为参数的特性提供的链接来填充响应?s链路HTTP报头字段。
例子:
res.links({
next: 'http://api.rnd.com/users?page=5',last: 'http://api.rnd.com/users?page=10'
});
响应位置的方法
句法:
res.location(path)
这种方法用于设置基于指定的路径参数的响应位置HTTP标头字段。
例子:
res.location('http://xyz.com');
响应重定向方法
句法:
res.redirect([status,] path)
此方法重定向到从指定的路径导出的URL,具有指定的HTTP状态
例子:
res.redirect('http://example.com');
响应Render方法
句法:
res.render(view [,locals] [,callback])
该方法呈现视图并发送呈现的HTML字符串到客户端。
例子:
// send the rendered view to the client
res.render('index');
// pass a local variable to the view
res.render('user',{ name: 'aryan' },function(err,html) {
// ...
});
响应发送方法
句法:
res.send([body])
这种方法被用来发送HTTP响应。
例子:
res.send(new Buffer('whoop'));
res.send({ some: 'json' });
res.send('
.....some html
');
响应SENDFILE方法
句法:
res.sendFile(path [,options] [,fn])
该方法用于将文件在给定的路径传送。它设置基于文件扩展名的内容类型响应HTTP报头字段。
例子:
res.sendFile(fileName,options,function (err) {
// ...
});
响应集合方法
句法:
res.set(field [,value])
这种方法用于设置HTTP报头字段的值来响应。
例子:
res.set('Content-Type','text/plain');
res.set({
'Content-Type': 'text/plain','Content-Length': '123',})
响应状态的方法
句法:
res.status(code)
此方法设置为响应HTTP状态。
例子:
res.status(403).end();
res.status(400).send('Bad Request');
响应类型的方法
句法:
res.type(type)
此方法设置内容类型HTTP标头的MIME类型。
例子:
res.type('.html'); // => 'text/html'
res.type('html'); // => 'text/html'
res.type('json'); // => 'application/json'
res.type('application/json'); // => 'application/json'
res.type('png'); // => image/png:
评论前必须登录!
注册