koa学习

为了弥补httpServer的不足,koa对其进行了一层封装,使之api更加的人性化。
比如http中的res.end()api响应给客户端,因为是数据流,所以用end来结束好像也很合理,但是总觉得挺奇怪的,koa里则直接是res.body = {},这样子的api就更加的人性化了。

特点

·koa2完全使⽤用Promise并配合 async 来实现异步
·轻量量,⽆无捆绑
·中间件架构
·优雅的API设计
·增强的错误处理理

基础使用

const Koa = require('koa')
const app = new Koa()
app.use((ctx, next) => {
ctx.body =  {
name: 'vito'
 }
next() 
})
app.use((ctx, next) => {
    if (ctx.url === '/html') {
        ctx.type = 'text/html;charset=utf-8'
		ctx.body = `我的名字是:${ctx.body.name}` }
})
app.listen(3000)

Koa原理

koa为了了能够简化API,引⼊入上下⽂文context概念,将原始请求对象req和响应对象res封装并挂载到 context上,并且在context上设置getter和setter,从⽽而简化操作。

	

你可能感兴趣的:(vue)