Express请求处理

1. 构建模块化路由

const express = require('express')
// 创建路由对象
const home = express.Router();
// 将路由和请求路径进行匹配
app.use('/home', home);
// 在home路由下继续创建路由
home.get('/index', () => {
    // /home/index
    res.send('欢迎来到博客展示页面');
});
复制代码
// home.js
const home = express.Router();
home.get('/index', () => {
    res.send('欢迎来到博客展示页面');
});
module.exports = home;
复制代码
// admin.js
const admin = express.Router();
admin.get('/index', () => {
    res.send('欢迎来到博客管理页面');
});
module.exports = admin;
复制代码
// app.js
const home = require('./route/home.js');
const admin = require('./route/admin.js');
app.use('/home', home);
app.use('/admin', admin);
复制代码

2. 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"}
});
复制代码

3. 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);
})
复制代码

4. Express路由参数

app.get('/find/:id', (req, res) => {
    console.log(req.params); // {id: 123} 
});
localhost:3000/find/123
复制代码

5. 静态资源的处理

通过Express内置的express.static可以方便地托管静态文件,例如img、CSS、JavaScript 文件等。

app.use(express.static('public'));
复制代码

现在,public 目录下面的文件就可以访问了。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享