簡潔而強大的 web 框架:toa
Toa
簡潔而強大的 web 框架。
Koa and it's authors
Thanks toToa 簡介
Toa 修改自 Koa,基本架構原理與 Koa 相似,context
、request
、response
三大基礎對象幾乎一樣。但 Toa 是基于 thunks 組合業務邏輯,來實現異步流程控制和異常處理。thunks
是一個比 co
更強大的異步流程控制工具。
Toa 的異步核心是 thunk
函數,支持 node.js v0.10.x
,但在支持 generator 的 node 環境中(io.js, node.js >= v0.11.9)將會有更好地編程體驗:用同步邏輯編寫非阻塞的異步程序。
Toa 與 Koa 學習成本和編程體驗是一致的,兩者之間幾乎是無縫切換。但 Toa 去掉了 Koa 的 級聯(Cascading)
邏輯,弱化中間件,強化模塊化組件,盡量削弱第三方組件訪問應用的能力,使得編寫大型應用的結構邏輯更簡潔明了,也更安全。
koa Process
Toa Process
功能模塊
與 Koa 一樣, Toa 也沒有綁定多余的功能,而僅僅提供了一個輕量優雅的函數庫,異步控制處理器和強大的擴展能力。
使用者可以根據自己的需求選擇獨立的功能模塊或中間件,或自己實現相關功能模塊。以下是 Toajs 提供的基礎性的功能模塊。它們已能滿足大多數的應用需求。
- toa-pm Process events manager for toa.
- toa-ejs Ejs render module for toa.
- toa-mejs Mejs render module for toa.
- toa-i18n I18n middleware for toa.
- toa-body Request body parser for toa.
- toa-token Token based authentication for toa.
- toa-router A router for toa.
- toa-static A static server module for toa.
- toa-favicon Favicon middleware for toa.
- toa-session Session middleware for toa.
- toa-cookie-session Cookie session middleware for toa.
- toa-compress Compress responses middleware for toa.
- toa-ratelimit Rate limiter module for toa.
安裝 Toa
npm install toa
Demo
var Toa = require('toa')
var app = Toa(function () {
this.body = 'Hello World!\n-- toa'
})
app.listen(3000)
API
使用手冊
Application
Context
Request
Response
Change Log
Who's using
Teambition
- Teambition 用戶社區 https://bbs.teambition.com/
- Teambition 文件服務 https://striker.teambition.net/
- Teambition 消息服務 https://push.teambition.com/
如果你也在用,不妨告知我~
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!