node使用express框架怎么统一处理code、msg等返回值?
处理成
{
code∶
msg:1
data:{}
}
前提是之前的接口已经写好了的,想复写进去,怎么搞?
node使用express框架怎么统一处理code、msg等返回值?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
CodeBytes 2023-02-18 16:48关注该回答引用ChatGPT
在 Express 中可以使用中间件来实现统一处理 code、msg 等返回值的需求。可以编写一个中间件函数,在每个路由响应的时候都调用该函数进行处理。以下是实现该中间件的示例代码:// 统一返回值中间件 const resultMiddleware = (req, res, next) => { // 重写 res.json 方法 res.json = (data, code = 0, msg = 'success') => { res.send({ code: code, msg: msg, data: data }) } next() } // 在 app.js 中引入该中间件 app.use(resultMiddleware)在这个中间件函数中,我们重写了 res.json 方法,将传入的参数重新组织成统一的格式返回。在每个路由的响应中,只需要调用 res.json 函数即可,参数分别为 data、code 和 msg。
举个例子,如果我们要返回一段数据 { name: 'Tom', age: 18 },可以这样写:
app.get('/api/user', (req, res) => { const data = { name: 'Tom', age: 18 } res.json(data) })这样返回的数据格式就是统一的,如下:
{ "code": 0, "msg": "success", "data": { "name": "Tom", "age": 18 } }这种方式可以使接口返回值的格式更加规范,也可以减少代码的冗余。
解决 无用评论 打赏 举报