目录
ctx.throw([status], [msg], [properties])
背景
上一篇文章,我们讲解了路由的基本使用,但是大家肯定非常疑惑,为啥没有演示参数的获取,以及更多的其他的跟路由相关的内容。其实这块内容非常多,而且都是跟ctx强相关,所以笔者单独起一篇文章来写。
ctx的使用
概念
上下文(Context)就是ctx。
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.pa