手记

【九月打卡】第11天 Node.js工程师学习笔记

课程章节: koa框架重构篇 - Koa快速入门

课程讲师: 北瑶

课程内容:

Koa 简介与基础应用

Koa 是一个新的 web 框架,由 Express 幕后的原班人马打造, 致力于成为 web 应用和 API 开发领域中的一个更小、更富有表现力、更健壮的基石。 通过利用 async 函数,Koa 帮你丢弃回调函数,并有力地增强错误处理。 Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。

安装
npm install koa

简单例子

const Koa = require('koa')
const app = Koa()

app.use(async ctx => {
	ctx.body = 'hello koa' // 返回给客户端
})

// 监听
app.listen(3000, () => {
	console.log('http:127.0.0.1:3000')
})
Koa上下文处理 (Context)

Koa Context 将 node 的 request 和 response 对象封装到单个对象中,为编写 Web 应用程序和 API 提供了许多有用的方法。 这些操作在 HTTP 服务器开发中频繁使用,它们被添加到此级别而不是更高级别的框架,这将强制中间件重新实现此通用功能。

每个 请求都将创建一个 Context,并在中间件中作为接收器引用,或者 ctx 标识符,如以下代码片段所示:

app.use(async ctx => {
	ctx; // 这是 Context
	ctx.request; // 这是 koa Request
	ctx.response; // 这是 koa Response
})

为方便起见许多上下文的访问器和方法直接委托给它们的 ctx.request或 ctx.response ,不然的话它们是相同的。 例如 ctx.type 和 ctx.length 委托给 response 对象,ctx.path 和 ctx.method 委托给 request。

Koa 路由与参数获取

安装

npm install @koa/router
const Router = require("@koa/router");//引入路由
const router = new Router()

router.get('/', async (ctx, next) => {
	ctx.body = ctx.url
})

app.use(router.routes());//使用路由中间件
获取客户端请求参数
router.get('/id:123', async (ctx, next) => {
	console.log(ctx.params)
})
错误异常接管
ctx.throw(400, '报错内容')
学习心得

通过这章学习明白了对koa的基础

课程截图

0人推荐
随时随地看视频
慕课网APP