【问题标题】:Koa - Best practice for yield error handlingKoa - 产量错误处理的最佳实践
【发布时间】:2015-04-21 17:57:44
【问题描述】:

我正在使用 Koa.js,并且正在寻找一种关于生成器返回错误处理的最佳实践(如果有的话)。采取以下措施:

var sql = require('./lib/sql');

app.use(function *(){
  var results = yield sql.query('select top 1 * from farm_animals;');
  this.body = results;
});

现在,我习惯的传统方法是:

sql.query('select top 1 * from farm_animals;', function(err, data){
  if (!err) {
    // return data
  }
});

现在我已将sql.query 转换为Promise,我无法返回errdata。那么我应该返回什么可以在返回数据时正确通知我错误?也许我可以采用并坚持一些标准:

{
  error: null,
  data: { id: 1, animal: 'cow' },
}

不过,在我这样做之前,我想确保我没有遗漏一些公认的最佳实践。

【问题讨论】:

    标签: koa io.js


    【解决方案1】:

    您可以使用 try/catch 块。

    有关详细信息,请参阅以下答案: Error handling with promises in Koa

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-12
      • 2017-11-26
      • 2016-06-06
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      • 2011-03-26
      • 1970-01-01
      相关资源
      最近更新 更多