這篇文章給大家分享的是關於Koa中發送回應的一種簡單的方式,內容很不錯,有需要的朋友可以參考一下,希望可以幫助到大家。
背景
最近做了很多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了。
相關推薦:
以上是Koa中發送回應的一種簡單的方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!