然后在app.js中加载中间件
const catchError = require('./middlewares/exception') const app = new Koa() // 全局异常中间件监听、处理,放在所有中间件的最前面 app.use(catchError) app.listen(3000)以上就完成了全局异常的处理,接下来就是如何使用这个全局异常了。
5、出现异常后及时抛出异常
这里以资源未找到为例。在查询数据库中,有的时候会出现数据找不到情况,这是用就可以抛出资源未找到的异常。
在models/book.js
/** * 获取书籍详情 * @param {书籍id} bid */ static async detail(bkid) { const book =await Book.findOne({ where: { bkid } }) if (!book) { // 通过全局异常的方式,抛出资源未找到的错误 throw new global.errs.NotFound() } return book }咨询请加微信:轻撩即可。