0
私はAngular jsとSailsを使ってWebアプリケーションを開発しています。今、私は結果を得た各戻り応答を実行すると、私の背中Node(sails js)の単一の関数から複数の応答を返します
getAllCountMyProfile: function(req,res){
UsertokenService.checkToken(req.get('user-token'), function (err, tokenCheck) {
var userId = tokenCheck.tokenDetails.userId;
var query = "select (select count(*) FROM review WHERE userId="+ userId +" AND approvalStatus = 'approved') AS reviewReceived ,"+
" (select count(*) FROM review WHERE reviewerId="+ userId +") AS reviewPenned, "+
"(select count(*) FROM photos WHERE userId="+ userId +" AND accessType='private' AND status='active') AS privatePhotoCount, "+
"(select count(*) FROM photos WHERE userId="+ userId +" AND accessType='public' AND status='active') AS publicPhotoCount";
Review.query(query, function (err, photoReviewCount) {
if(err){
console.log("Error"+ err);
}
else{
return res.json(200, {status:4, message:'success',data1:photoReviewCount});
}
});
UserService.checkVideoLimit(userId, function (err, videoCount)
{
var noVideos=videoCount.data;
console.log("Video count "+noVideos);
return res.json(200, {status: 1, data2: videoCount});
});
var query="SELECT sum(rating) AS totalRating,COUNT(*) AS totalCount FROM review where userId=" +userId+ "";
Review.query(query, function (err, avgRating) {
if(err){
console.log("Error"+ err);
}
else{
var rating=JSON.stringify(result);
var totalRating=result[0].totalRating;
var count=result[0].totalCount;
var avgRatingValue=(totalRating/count).toFixed(2);
console.log(totalRating,count);
console.log("avgRating"+rating);
return res.json(200, {status:4, message:'success',data3:avgRating});
}
});
});`
}
を参照してくださいdatabase.Plz異なるカウント値を表示するメニューがあるissue.In自分のアプリケーションで打ちました。上記のクエリを実行すると、コンソールでエラーメッセージが表示される "送信後にヘッダーを設定できません。" 結果data1、data2、data3が必要です。これを得るための解決策は何ですか?
これは問題なく動作しています – sulu666