开发者学堂课程【Node.js 入门与实战:res 对象的常见方法】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/588/detail/8319
res 对象的常见方法
一、res对象的常见方法
1.res.json
res.json 等价于 res.send
服务器要想向一个客户端响应一个 json 数据的时候,可以直接用 res.json,它是发送一个 json 的响应,要是用这个 json 它会把其它值转换成 json 数据。
范例:
//加载 express 摸块
var express =require(‘express’);var path = require(‘path’;
//创建 app 对象
var app = express(O;
app.get(
‘
/
‘
, function (req, res)
{
res.json(
{
name:
‘张三’,age: 18});
}
)
;
app.listen(
9000
, function(){
consoLe.log(
‘
http://localhost:9000’)
);
}
);
2.res.redirect
服务器用来向浏览器发送重定向的,以前向浏览器发送重定向需要先设定一个状态码,在设置一个状态消息最后再给它一个位置然后再结束这个响应。
Express把这些操作封装到一个叫 redirect 的方法里面。
这个方法提供两个参数,第一个参数可传可不传,就是重定向状态码,如果不传默认是302即使传状态码,也不需要传状态消息,因为对应的状态码有固定的状态消息,它会自动判断这个状态码对应的消息。
范例:
//加载 express 摸块
var express =require(‘express’);var path = require(‘path’;
//创建 app 对象
var app = express(O;
app.get(
‘
/
‘
, function (req, res)
{
res
.redirect(301‘https://www.baidu.com’);
}
);
app.listen(
9000
, function(){
consoLe.log(
‘
http://localhost:9000’)
);
}
);
3. res.sendFile
从 express V4.8开始才有的这个方法
直接写文件路径就可以后面可以写一个选项,这个选项可以写什么值如下:
范例:
//加载 express 摸块
var express =require(‘express’);var path = require(‘path’;
//创建 app 对象
var app = express(O;
app.get(
‘
/
‘
, function (req, res)
{
res.sendFile(path.jion(__dirname‘public’,’screenshot.jpg’),(err){
if(err){
t
hrow err;
}
Console.log(‘ok’);
);
}
);
app.listen(
9000
, function(){
consoLe.log(
‘
http://localhost:9000’)
);
}
);
以前 fs 读取文件并相应就不需要了
res.sendFile(path.jion(__dirname‘public’,’screenshot.jpg’),(err){
if(err){
这一句话搞定
4.res.status
用来设置响应状态码
案例:
//加载 express 摸块
var express =require(‘express’);var path = require(‘path’;
//创建 app 对象
var app = express(O;
app.get(
‘
/
‘
, function (req, res)
{
res
.status(404).end
(‘文件不存在!‘);
}
)
;
app.listen(
9000
, function(){
consoLe.log(
‘
http://localhost:9000’)
);
}
);
Res.redirect 这个响应状态码都是重定向如果想设置一个404,得需要3句话现在只需要 res.status.end(‘文件不存在’);就可以。