◆ 构建模块化路由:
◆ GET参数的获取:
Express框架中使用req.query即可获取GET参数,框架内部会将GET参数转换为对象并返回。
// 接收地址栏中问号后面的参数,例如: http://localhost:3000/?name=zhangsan&age=30
app.get('/', (req, res) => {
console.log(req.query); // {"name": "zhangsan", "age": "30"}
});
◆ POST参数的获取:
Express中接收post请求参数需要借助第三方包 body-parser。
// 引入body-parser模块
const bodyParser = require('body-parser');
// 配置body-parser模块
app.use(bodyParser.urlencoded({ extended: false }));
// 接收请求
app.post('/add', (req, res) => {
// 接收请求参数
console.log(req.body);
})
◆ Express路由参数:
// 引入express框架
const express = require('express');
const bodyParser = require('body-parser');
// 创建网站服务器
const app = express();
//请求地址:localhost:3000/find/123
app.get('/find/:id', (req, res) => {
console.log(req.params); // {id: 123}
});
// 端口监听
app.listen(3000);
◆ 静态资源的处理:
通过Express内置的express.static可以方便地托管静态文件,例如img、CSS、JavaScript 文件等。这样就可以直接访问设定目录下面的文件,例如:http://localhost:3000/images/kitten.jpg
。
app.use('/static',express.static(path.join(__dirname, 'public')))