nodeJs —— koa 常用中間件


 

koa-router    用戶Koa的路由器中間件

  路由是Web框架必不可少的基礎功能,koa.js為了保持自身的精簡,並沒有像Express.js自帶了路由功能,因此koa-router做了很好的補充,作為koa星數最多的中間件,koa-router提供了全面的路由功能,比如類似Express的app.get/post/put的寫法,URL命名參數、路由命名、支持加載多個中間件、嵌套路由等。其他可選路由中間件: koa-route, koa-joi-router, koa-trie-router
 

koa-views    koa2的模板渲染中間件

  koa-views對需要進行視圖模板渲染的應用是個不可缺少的中間件,支持ejs, nunjucks等眾多模板引擎。

koa-multer      文件上傳中間件

 

koa-json     讓koa2支持響應JSON數據

 

koa-onerror    koa有error事件,當發生錯誤,可以通過error事件,對錯誤統一處理。

 

koa-bodyparser  用來解析body

  通過post來傳遞表單、json或上傳文件,數據不容易獲取,通過koa-bodyparser解析之后,在koa中this.body就能獲取到數據。koa.js並沒有內置Request Body的解析器,當我們需要解析請求體時需要加載額外的中間件,官方提供的koa-bodyparser是個很不錯的選擇,支持x-www-form-urlencoded, application/json等格式的請求體,但不支持form-data的請求體,需要借助 formidable 這個庫,也可以直接使用 koa-bodykoa-better-body

 

koa-session    koa的session管理中間件

  HTTP是無狀態協議,為了保持用戶狀態,我們一般使用Session會話,koa-session提供了這樣的功能,既支持將會話信息存儲在本地Cookie,也支持存儲在如Redis, MongoDB這樣的外部存儲設備。
 

koa-logger

  koa-logger提供了輸出請求日志的功能,包括請求的url、狀態碼、響應時間、響應體大小等信息,對於調試和跟蹤應用程序特別有幫助,koa-bunyan-logger 提供了更豐富的功能

 

koa2-cors

  跨域配置

 

koa-static  
  Node.js除了處理動態請求,也可以用作類似Nginx的靜態文件服務,在本地開發時特別方便,可用於加載前端文件或后端Fake數據,可結合  koa-compress 和  koa-mount 使用。
 

koa-jwt

隨着網站前后端分離方案的流行,越來越多的網站從Session Base轉為使用Token Base,JWT(Json Web Tokens)作為一個開放的標准被很多網站采用,koa-jwt這個中間件使用JWT認證HTTP請求。
 
網絡安全得到越來越多的重視, helmet 通過增加如Strict-Transport-Security, X-Frame-Options, X-Frame-Options等HTTP頭提高Express應用程序的安全性,koa-helmet為koa程序提供了類似的功能,參考 Node.js安全清單
 
koa-compress
  當響應體比較大時,我們一般會啟用類似Gzip的壓縮技術減少傳輸內容,koa-compress提供了這樣的功能,可根據需要進行靈活的配置。
  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

https://npm.taobao.org/package/koa-compress


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM