3
我正在使用解析雲代碼構建與朋友關係的應用程序。解析雲代碼回調不起作用
當Alice向Bob發送好友請求,它是71 類型的通知當Bob回答他發送類型8.
的通知在服務器中,當型8通知被髮送,第一一些友誼關係正在進行中。它們是:從兩個用戶中移除「潛在的朋友列表」,並添加到「朋友列表」中。
之後,類型71的通知應更改爲類型1通知。
由於某些原因,我一直在努力工作24小時。我不能一個接一個地執行這兩個函數:第二個函數從不執行。這裏是我的代碼
Parse.Cloud.afterSave("Notification", function(request, response) {
Parse.Cloud.useMasterKey();
var downQuery = new Parse.Query("Notification");
var namnamA = request.object.get('nameA');
var namnamB = request.object.get('nameB');
var tytype = request.object.get('type');
var alice = Parse.User.current();
if (tytype === 8){
var bobQuery = new Parse.Query(Parse.User);
bobQuery.equalTo("username", namnamB);
bobQuery.first().then(function(bob) {
var alicesRelation = alice.relation("friendsList");
var alicesPotRelation = alice.relation("potFriendsList");
var bobsRelation = bob.relation("friendsList");
var bobsPotRelation = bob.relation("potFriendsList");
alicesPotRelation.remove(bob);
alicesRelation.add(bob);
bobsPotRelation.remove(alice);
bobsRelation.add(alice);
return Parse.Object.saveAll([alice, bob]);
}).then(function() {
downQuery.equalTo('nameA', namnamB);
downQuery.equalTo('nameB', namnamA);
downQuery.equalTo('type', 71);
return downQuery.find();
}).then(function(notizz) {
notizz.set('type', 1);
return Parse.Object.saveAll([notizz]);
}).then(function() {
console.log("success " + arguments);
response.success(arguments);
}), function(error) {
console.log("error " + error.message);
response.error(error);
}
}
});
任何幫助將大大提高我的電腦的預期壽命。謝謝。
作爲另一個說明,我相信,這將導致無限循環,一旦它到達'返回Parse.Object.saveAll([notizz]);'。這是保存通知,並且我們已經在afterSave方法的通知中。 – papergodzilla