jsion-server封装请求方法
时间: 2023-08-09 20:04:20 浏览: 109
在 json-server 中,可以使用中间件(middleware)来封装请求方法,使其更加可复用和灵活。常见的封装方式包括:
1. 自定义中间件函数:可以通过 app.use() 方法注册自定义中间件函数,用来处理所有请求。自定义中间件函数接收三个参数:req(请求对象)、res(响应对象)和 next(下一个中间件函数)。其中 next 参数是一个回调函数,用来调用下一个中间件函数或者路由处理函数。
例如,可以使用以下代码定义一个自定义中间件函数,用来记录所有请求的时间和路径信息:
```
app.use((req, res, next) => {
console.log(`[${new Date()}] ${req.method} ${req.url}`);
next();
});
```
2. 封装路由处理函数:可以将常用的路由处理函数封装成函数,使其更加可复用。在路由处理函数中,可以通过 req.params 对象获取 URL 中的参数,通过 req.query 对象获取查询参数,通过 req.body 对象获取请求体参数。
例如,可以使用以下代码定义一个处理 GET /users/:id 请求的路由处理函数:
```
function getUserById(req, res) {
const id = req.params.id;
const user = db.get('users').find({ id }).value();
if (user) {
res.json(user);
} else {
res.sendStatus(404);
}
}
app.get('/users/:id', getUserById);
```
3. 使用第三方库:可以使用第三方库来封装请求方法,例如 axios、request 等。这些库提供了丰富的功能和选项,可以满足各种复杂的请求需求。
例如,可以使用以下代码使用 axios 库发送 POST 请求:
```
const axios = require('axios');
axios.post('/api/users', { name: 'Alice' })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
```
阅读全文