res 对象的常见方法|学习笔记

简介: 快速学习 res 对象的常见方法

开发者学堂课程【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开始才有的这个方法

直接写文件路径就可以后面可以写一个选项,这个选项可以写什么值如下:

image.png

范例:

//加载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){

throw 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(‘文件不存在’);就可以。

相关文章
|
前端开发 API
uniapp中为什么会出现跨域问题,如何解决
uniapp中为什么会出现跨域问题,如何解决
5402 0
|
SQL 存储 算法
Clickhouse中支持的Join类型
此为Join探索系列的第一篇
|
9月前
|
SQL Java 数据库连接
MyBatis 分页机制详解:从 RowBounds 到物理分页实践
MyBatis分页策略解析:逻辑分页(RowBounds)将全量数据加载至内存,仅适用于小数据量;物理分页通过SQL层面限制返回数据,性能更优。推荐使用PageHelper插件,自动适配数据库方言,一行代码实现高效分页,避免OOM风险,提升系统稳定性。
|
8月前
|
人工智能 应用服务中间件 API
阿里云上线Clawdbot全套云服务,Clawdbot 部署保姆级教程
阿里云上线 Moltbot(原名 Clawdbot)全套云服务,用户可在轻量应用服务器或“无影云电脑”上快速启用 Moltbot,并按需调用阿里云“百炼”平台上的上百款“千问”系列大模型;同时打通消息信道(钉钉、iMessage 等),以实现“在消息里唤醒并指挥智能体”的端到端体验,目标是把开源 Agent 的火爆从个人部署扩展到企业与消费级云端服务。
1897 9
鸿蒙5开发宝藏案例分享---Swiper组件性能优化实战
本文分享了鸿蒙系统中Swiper组件的性能优化技巧,包括:1) 使用`LazyForEach`替代`ForEach`实现懒加载,显著降低内存占用;2) 通过`cachedCount`精准控制缓存数量,平衡流畅度与内存消耗;3) 利用`onAnimationStart`在抛滑时提前加载资源,提升构建效率;4) 添加`@Reusable`装饰器复用组件实例,减少创建开销。实际应用后,图库页帧率从45fps提升至58fps,效果显著。适合处理复杂列表或轮播场景,欢迎交流经验!
|
存储 前端开发 BI
如何开发一套考勤管理系统?(附架构图+流程图+代码参考)
本文介绍如何设计和开发一套高效的考勤管理系统,涵盖考勤打卡、补卡申请、请假/加班、调休/出差、考勤确认等核心模块,帮助企业实现数字化、自动化的员工考勤管理,提升管理效率与准确性。
|
资源调度 JavaScript 前端开发
vue2_二次封装a-upload组件,自定义上传预览
vue2_二次封装a-upload组件,自定义上传预览
1627 0
在 Vue.js 中使用 watch 来监听对象属性的变化
在 Vue.js 中使用 watch 来监听对象属性的变化
|
存储 SQL 关系型数据库
关系型数据库和非关系型数据库的区别和选择方法?
【8月更文挑战第17天】关系型数据库和非关系型数据库的区别和选择方法?
1618 0
|
前端开发 UED 开发者
uni-app:去除导航栏&跨域的问题&blobe查看图片&v-deep&页面操作 (五)
本文介绍了几个前端开发技巧:1) 如何通过设置 `navigationStyle` 为 `custom` 去除顶部导航;2) 解决跨域问题的方法,包括使用 `dotenv` 加载全局变量和配置 `devServer` 的代理;3) 使用 Blob 和 FileReader 查看图片;4) 利用 `v-deep` 深度作用选择器修改样式;5) 修改页面左上角返回按钮的行为。
689 0

热门文章

最新文章