# 响应
响应对象可以向客户端发送响应,并终止请求。若没有从路由处理函数调用这些方法,则客户端请求将保持挂起状态。其有以下这些方法:
* res.status() Set status code.
* res.type() Set MIME type.
* **res.send()** Send a response of various types.
* **res.json()** Send a JSON response.
* **res.render()** Render a view template.
* res.sendStatus() Set the response status code and send its string representation as the response body.
* res.sendFile() Send a file as an octet stream.
* res.end() End the response process.
* res.redirect() Redirect a request.
* res.download() Prompt a file to be downloaded.
* res.jsonp() Send a JSON response with JSONP support.
```
// 响应 JSON 格式数据
const express = require('express');
const app = express();
app.get('/', (req, res) => {
let jsonData = {name : 'xx', age : 11};
// 把上面的 JS 对象自动转 JSON , 并设置响应头Content-Type的值为application/json;chasert=utf-8
res.json(jsonData);
});
app.listen(8888, () => {
console.log('Example app listening on port 8888!');
});
```
```
// 文件下载
// 文件位置 myapp/a.txt
const path = require('path');
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.download(path.join(__dirname, 'a.txt'));
});
app.listen(8888, () => {
console.log('Example app listening on port 8888!');
});
```
- NodeJs
- 01-万维网
- 02-CS 架构 VS BS 架构
- 03-Web 服务器访问流程
- 04-url
- 05-网络传输协议
- 06-HTTP 协议
- 07-报文
- 08-命令行界面
- 09-什么是 Node.js
- 10-环境安装及配置
- 11-JavaScript 代码运行环境
- 12-全局对象
- 13-Buffer
- 14-模块化
- 15-EventEmitter
- 16-path模块
- 17-流式操作
- 18-包
- 19-模板技术
- 20-ejs入门
- 21-express
- 01-什么是express
- 02-Hellow Express
- 03-静态资源服务
- 04-路由
- 05-模块化路由处理程序
- 06-中间件
- 07-手动实现中间件
- 08-常用内置中间件和第三方中间件
- 09-响应
- 10-获取请求参数
- 11-Express 中使用模板引擎
- 22-web存储与安全
- 01-cookie
- 02-sessionStorage
- 03-localStorage
- 04-base64
- 05-https
- 06-同源策略