当前位置: 首页 > backend >正文

express响应设置 以及redirect,download,json.sendFdile

Express 中常用响应方法 的整理,包括设置响应头、重定向、下载、发送 JSON、发送文件等👇


📤 一、设置响应头与状态码

设置状态码

res.status(404).send('Not Found');

设置响应头

res.set('Content-Type', 'text/plain'); // 设置内容类型
res.set('X-Custom-Header', 'MyValue'); // 自定义头
res.send('响应已设置头信息');

🔁 二、重定向 res.redirect()

// 临时重定向(302)
app.get('/old', (req, res) => {res.redirect('/new');
});// 永久重定向(301)
app.get('/moved', (req, res) => {res.redirect(301, '/new-location');
});

💾 三、文件下载 res.download()

app.get('/download', (req, res) => {res.download('./files/report.pdf'); // 自动设置 Content-Disposition 为 attachment
});

✅ 会自动触发浏览器下载文件,如果找不到文件,会自动触发错误处理。


📦 四、发送 JSON 数据 res.json()

app.get('/api/user', (req, res) => {res.json({ name: 'Tom', age: 18 });
});

✅ 自动设置 Content-Type: application/json,并序列化对象


📄 五、发送静态文件 res.sendFile()

const path = require('path');app.get('/readme', (req, res) => {res.sendFile(path.join(__dirname, 'files/readme.txt'));
});

⚠️ 需要提供绝对路径


🔒 六、附加:常见组合使用

app.get('/example', (req, res) => {res.status(200).set('X-Powered-By', 'Express').json({ message: 'Success!' });
});

🎁 小结

方法作用
res.send()发送字符串、HTML、Buffer、对象等
res.json()发送 JSON 数据并设置响应头
res.sendFile()发送文件(提供绝对路径)
res.download()提示浏览器下载指定文件
res.redirect()重定向到指定路径
res.status()设置响应状态码
res.set()设置响应头信息

http://www.xdnf.cn/news/1817.html

相关文章:

  • Java 2025 技术全景与实战指南:从新特性到架构革新
  • 如何使用 CompletableFuture、Function 和 Optional 优雅地处理异步编程?
  • win11中wsl在自定义位置安装ubuntu20.04 + ROS Noetic
  • 自动化测试概念及常用函数篇 [软件测试 基础]
  • 算法训练营第二天| 209.长度最小的子数组、59.螺旋矩阵II、区间和
  • 数智视融合驱动未来,Al+数字孪生重塑价值|2025袋鼠云春季数智发布会回顾
  • 离线电脑安装python包
  • 六、初始化与清理(Initialization cleanup)
  • Spring Boot 整合 Lock4j + Redisson 实现分布式锁实战
  • YOLOv11架构革新——基于RFEM模块的小目标感受野增强与特征优化
  • 如何管理“完美主义”导致的进度拖延
  • 高德地图API + three.js + Vue3基础使用与使用 + 标记不显示避坑
  • IMX6ULL 最新方案移植教程中间间系列5——向开发板迁移SSH和FTP
  • LeetCode hot 100—最长有效括号
  • 【FAQ】安装Agent的主机,为何不能更改显示分辨率
  • CVE-2025-32102 | Ubuntu 下复现 CrushFTP telnetSocket接口SSRF
  • dataType 和 content-type 参数的作用
  • 补4月22日23日
  • Sentieon软件发布V202503版本
  • 首版次软件产品有哪些阶段?专业软件测试服务公司分享
  • 使用String path = FileUtilTest.class.getResource(“/1.txt“).getPath(); 报找不到路径
  • Spring Boot 中配置线程池时优化 `ThreadPoolTaskExecutor` 的配置总结
  • DDL小练习
  • Java小公司实习面经
  • python字符串(3):字符集/编码(查看修改字符集,乱码);码点和字符的转换(chr和ord),字符串的编码解码函数(encode,decode)
  • Dockerfile指令
  • JavaScript 实现继承及 Class 本质详解
  • 【Python Web开发】02-Socket网络编程02
  • Java 高频面试题解析
  • Langchain提取结构化数据