亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Koa中更方便簡單發(fā)送響應的方式

liujs / 3527人閱讀

摘要:我打算繼續(xù)更新一個方法叫,這可以讓后臺自定義返回的狀態(tài)碼以及錯誤信息。例如,用戶沒有權限,的狀態(tài)碼就應該是,而不應該是我們自定義的了。寫在后面大家如果有更好的解決方案,希望不吝賜教。

Github傳送門 koa2-response

背景

最近做了很多node的后臺項目,寫了很多接口,但是發(fā)現隨著接口的慢慢增多,需要寫越來越來越多類似于下面這種代碼。

ctx.body = {
    data: {
        name: "test"
    },
    status: {
        code: 0,
        message: success
    }
}

寫成這樣還好,至少做到了所有接口返回的格式統(tǒng)一,如果沒有在這方面做規(guī)范,那么后臺的接口返回不統(tǒng)一,將會給前端帶來很多的問題。

而且每個接口都要寫這么一大堆的代碼。感覺是個特別麻煩的事。

所以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);

就這樣很簡單的就可以統(tǒng)一后端的返回數據,這個方法讓我在項目中節(jié)約了很多時間。這個中間件還是在持續(xù)更新中,現在已經有的方法是response.success和response.error。我打算繼續(xù)更新一個方法叫response.throw,這可以讓后臺自定義返回的http狀態(tài)碼以及錯誤信息。例如,用戶沒有權限,http的狀態(tài)碼就應該是401,而不應該是我們自定義的code了。

寫在后面

大家如果有更好的解決方案,希望不吝賜教。

歡迎光臨 個人博客

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://www.ezyhdfw.cn/yun/110148.html

相關文章

  • 大廠532道面試題知識點筆記

    摘要:在運行這一行之后,也指向這顯然會導致繼承鏈的紊亂明明是用構造函數生成的,因此我們必須手動糾正,將對象的值改為。下文都遵循這一點,即如果替換了對象,那么,下一步必然是為新的對象加上屬性,并將這個屬性指回原來的構造函數。 express&koa 面試題目:1.express和koa的對比,兩者中間件的原理,koa捕獲異常多種情況說一下 參考:https://blog.csdn.net/sh...

    Tony 評論0 收藏0
  • 大廠532道面試題知識點筆記

    摘要:在運行這一行之后,也指向這顯然會導致繼承鏈的紊亂明明是用構造函數生成的,因此我們必須手動糾正,將對象的值改為。下文都遵循這一點,即如果替換了對象,那么,下一步必然是為新的對象加上屬性,并將這個屬性指回原來的構造函數。 express&koa 面試題目:1.express和koa的對比,兩者中間件的原理,koa捕獲異常多種情況說一下 參考:https://blog.csdn.net/sh...

    RdouTyping 評論0 收藏0
  • 大廠532道面試題知識點筆記

    摘要:在運行這一行之后,也指向這顯然會導致繼承鏈的紊亂明明是用構造函數生成的,因此我們必須手動糾正,將對象的值改為。下文都遵循這一點,即如果替換了對象,那么,下一步必然是為新的對象加上屬性,并將這個屬性指回原來的構造函數。 express&koa 面試題目:1.express和koa的對比,兩者中間件的原理,koa捕獲異常多種情況說一下 參考:https://blog.csdn.net/sh...

    cgspine 評論0 收藏0
  • iKcamp|基于Koa2搭建Node.js實戰(zhàn)(含視頻)? 記錄日志

    滬江CCtalk視頻地址:https://www.cctalk.com/v/15114923883523 showImg(https://segmentfault.com/img/remote/1460000012932474?w=1606&h=968); log 日志中間件 最困難的事情就是認識自己。 在一個真實的項目中,開發(fā)只是整個投入的一小部分,版本迭代和后期維護占了極其重要的部分。項目上線...

    stefan 評論0 收藏0
  • 服務端事件EventSource揭秘

    摘要:不過永久幀的技術會導致主頁面的加載條始終處于狀態(tài),體驗很差。同時,規(guī)范允許服務端指定自定義事件,客戶端偵聽該事件即可。 服務端推 服務端推,指的是由服務器主動的向客戶端發(fā)送消息(響應)。在應用層的HTTP協(xié)議實現中,請求-響應是一個round trip,它的起點來自客戶端,因此在應用層之上無法實現簡易的服務端推功能。當前解決服務端推送的方案有這幾個: 客戶端長輪訓 websocket...

    sf190404 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<