0
ユーザーアカウントの管理に外部コードを使用するためにミドルウェアを作成しました。私は新しいアカウントをクレアチンだとき、私は次のコードごとにマネージャの関連機能を使用します。コールバック関数でエラーをキャッチ
.post(function(req,res,next){
UsersManager.createUser(req.body.username,req.body.password,function(err){
if(err){
res.json({
success: false,
message: 'User NOT created',
});
}else{
res.json({
success: true,
message: 'User '+req.body.username+' created',
});
}
});
});
しかし、私は、たとえば、ユーザーが既に存在する場合には、エラーをキャッチすることはできませんよ。マイUsersManager.createUser
次のコードされています
createUser: function(username,password,callback){
var new_user = new User({
username: username,
password: password
});
User.findOne({username:username},function(err,user){
if(!user) new_user.save(callback);
else throw err;
});
}
エラーは次のとおりです。
Error: Uncaught, unspecified "error" event. (null)
私は、コールバックによってcatchedするために、最後の行else throw err
を処理する方法は?ユーザー管理を処理するためにコードの構造についてどう思いますか?