Github传送门 koa2-response
背景
近来做了许多node的背景项目,写了许多接口,然则发明跟着接口的逐步增加,需要写越来越来越多类似于下面这类代码。
ctx.body = {
data: {
name: 'test'
},
status: {
code: 0,
message: success
}
}
写成如许还好,最少做到了一切接口返回的花样一致,假如没有在这方面做范例,那末背景的接口返回不一致,将会给前端带来许多的题目。
而且每一个接口都要写这么一大堆的代码。觉得是个迥殊贫苦的事。
所以koa2-response就这么诞生了。其实在写这篇文章之前,我已在我的项目内里用了一段时候了,方便了我们的操纵。
装置
npm install koa2-response
用法
const koa = require('koa');
const router = require('koa-router')();
const app = new koa();
const response = require('koa2-response');
const code = {
UNKNOWN_ERROR: [1, 'Sorry, you seem to have encountered some unknown errors.']
}
router
.get('/', (ctx, next) => {
response.success(ctx, {
name: 'test'
})
})
.get('/error_test', (ctx, next) => {
response.error(ctx, code.UNKNOWN_ERROR);
})
app.use(router.routes());
app.use(router.allowedMethods());
app.listen(3000);
就如许很简单的就能够一致后端的返回数据,这个要领让我在项目中勤俭了许多时候。这个中间件照样在延续更新中,如今已有的要领是response.success和response.error。我盘算继承更新一个要领叫response.throw,这能够让背景自定义返回的http状况码以及错误信息。比方,用户没有权限,http的状况码就应该是401,而不该该是我们自定义的code了。
写在背面
人人假如有更好的解决方案,愿望不吝赐教。
欢迎光临 个人博客