http://www.myfreax.com/koa-404-500-customize-page/
Koa由Express团队打造的下一代,更小、更健壮、更富有表现力的 Web 框架,通过组合不同的 generator,可以写同步式的代码,异步式的执行,使得代码更加扁平化,简洁,易于阅读,并极大地提升常用错误处理效率。Koa 不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库
在Koa中status的状态码,默认是404,如果status在整个Request/Response周期没有发生变化,那么就意味这个Request就是404,如果在Request/Response周期内改变status,那么status就是200,当然我们不需要显式的改变status,在下面的一写情况中koa就会去更改状态码
this.render('index',{});
this.send();
this.body='';
因此只需要在koa的处理Response之后,发送到浏览器之前的中间件中判断status是否404即可,处理koa自定义404页面
//first 中间件
app.use(function*(next){
yield next;
if(parseInt(this.status) === 404){
this.body = '404';
}
})
那么在处理500时候,可以使用try/catch来捕获每个中间件的异常,就可以处理500的错误
app.use(function*(next) {
try {
yield* next;
} catch (e) {
this.status = 500;
this.body = '500';
}
if(parseInt(this.status) === 404){
this.body = '404';
}
});
测试404很简单,只需要填写一个不存在路由的URI即可,下面测试500情况
const router = require('koa-router')();
app
.use(router.routes())
.use(router.allowedMethods());
router.get('/', function *(next) {
throw new Error('500');
});
相关推荐
通过组合npm上的优秀模块,该系统已具有的基本功能如下: [1] mvc 架构和优雅的路由,感谢koa-controller [2] 配置文件处理 [3] session 和 cookie 处理 [4] post 字段和文件处理 [5] gzip 开启 [6] 静态服务...
Koa核心不绑定任何中间件,但提供了优雅的一组可以快速和愉悦地编写服务器应用的方法。 示例代码: var koa = require('koa'); var app = koa(); // logger app.use(function *(next){ var start...
正常退出服务器(Koa),数据库(Mongo / Mongoose),Redis客户端,Bree作业计划程序,Bull作业计划程序和自定义处理程序。目录安装 : npm install @ladjs/graceful : yarn add @ladjs/graceful用法当调用...
Koa 不在内核方法中绑定任何中间件, 它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手。开发思路和express差不多,最大的特点就是可以避免异步嵌套。 在数据支持使用的是非关系型数据库MongoDB。
Koa是由Express原班人马打造的,致力于成为...koa不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web应用变得得心应手。本教程旨在介绍Koa框架的相关基础知识,能够帮助你快速的上手。Koa
使用 koa 编写 web 应用,通过组合不同的 generator,可以免除重复繁琐的回调函数嵌套, 并极大地提升错误处理的效率。koa 不在内核方法中绑定任何中间件, 它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变...
使用node koa框架,也找了一些网上的koa2脚手架,发现并没有一个项目能提供优雅的异常处理,故产生了此项目⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ 项目运行 直接npm start立即启动启动项目,访问本地主机:7100 / api / ...
Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。 Koa vs Express Koa使用promises和async函数来摆脱回调地狱的应用并简化错误处理。它暴露自己ctx.request和ctx....
koa 不在内核方法中绑定任何中间件, 它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手。开发思路和express差不多,最大的特点就是可以避免异步嵌套。koa2利用ES7的async/await特性,极大的解决了...
koa 发布已经快 6 年的时间,作为继 express 之后 node 服务框架最大... Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。 既然是 web 框架大家一定不陌生,通过启动一个
通过利用生成器,Koa允许您放弃回调并大大提高错误处理能力。 Koa在内核中未捆绑任何中间件,并提供了一套优雅的方法来使编写服务器变得快速而愉快。 通过Github Actions CI,此样板已部署! 您可以尝试向不同的...
koa 不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手,nodejs的天生的异步处理流程,使得它很适合微信公众号这种频繁的消息互动,再加上pm2的多进程管理,可以说...
koa 不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手。 准备工作 首先,我们的服务器需要部署好Nodejs的环境,这里我用Nodejs在windows下的本地服务器来做演
使用 koa 编写 web 应用,通过组合不同的 generator,可以免除重复繁琐的回调函数嵌套,并极大地提升常用错误处理效率。Koa 不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变...
Koa 是一个新的 web 框架,由 Express 幕后的... 通过利用 async 函数,Koa 帮你丢弃回调函数,并有力地增强错误处理。 Koa 并没有捆绑任何中间件, 而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。
Koa 不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写 Web 应用变得得心应手。 安装 koa Koa需要支持ES2015和async function的node v7.6.0或更高版本。 您可以使用喜欢的依赖管理工具快速...
通过利用生成器,Koa允许您放弃回调并大大提高错误处理能力。 Koa在内核中未捆绑任何中间件,并提供了一套优雅的方法来使编写服务器变得快速而愉快。 通过Github Actions CI,此样板已部署! 您可以尝试向不同的...
而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。 安装 Koa 依赖 node v7.6.0 或 ES2015及更高版本和 async 方法支持. 你可以使用自己喜欢的版本管理器快速安装支持的 node 版本: nvm install 7 ...
基于 TS + React + AntD + Koa + MongoDB 实现的 TodoList 全栈应用应用特点前后端均用 TypeScript 编写接口统一遵循 RESTful 风格实现服务端的优雅错误处理技术栈语言TypeScript(赋予 JS 强类型语言的特性)前端...
这三个东西 可以优雅的解决异步问题。在学习koa2的时候遇到了获取数据后再进行模板渲染的异步问题。在查找各种资料后成功的解决了该问题,现在写个笔记记录一下。 先说一下async、await,第一次见到这两个词是在学习...