我尝试在环回模型中扩展api。 在模型中,我使用了诸如findOne,create之类的模型的标准api。 示例代码如下
Subscriber.findOne({
where : {
email : "............."
},
function(err, instance){
if(instance)
{
cb(null,instance);
response = "success";
}
}
cb(null, response);
但是当我调用此扩展api时,发生了错误。
throw err:// Rethron non-MsSQL errors
^
Error: Callback was already called.
如何解决此错误?
答案 0 :(得分:1)
您需要在return
回调中使用if
,因为您没有使用else
语句。将您的代码更改为:
Subscriber.findOne({
where: {
email: "............."
},
function(err, instance) {
if (instance) {
response = "success";
return cb(null, instance);
}
},
return cb(null, response);
});
答案 1 :(得分:1)
更好的代码:
Subscriber.findOne({
where: {
email: "............."
},
(err, instance) => {
if (err) return cb(err)
if (!instance) {
let error = new Error()
error.status = 404
error.message = 'Subscriber not found.'
return cb(error)
}
cb(null, instance)
}
})