91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解Koa中更方便簡單發送響應的方式

發布時間:2020-10-08 12:57:39 來源:腳本之家 閱讀:264 作者:detectiveHLH 欄目:web開發

背景

最近做了很多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了。

寫在后面

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

Github傳送門koa2-response

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

茶陵县| 灵石县| 四会市| 波密县| 绍兴市| 青岛市| 明水县| 邵东县| 政和县| 河间市| 旺苍县| 旌德县| 班玛县| 博罗县| 尖扎县| 肇州县| 永善县| 天镇县| 尉氏县| 碌曲县| 上杭县| 锦屏县| 合阳县| 西充县| 离岛区| 余姚市| 新兴县| 格尔木市| 瓮安县| 新竹县| 葵青区| 梁河县| 太保市| 贡嘎县| 邓州市| 肇州县| 屏东市| 辉县市| 绩溪县| 甘孜县| 兰西县|