2016-02-26 49 views
0

我嘗試使用下面的代碼設置ACL,但在我的mongolab數據庫中沒有看到ACL設置。我在代碼中做錯了什麼?我找不到任何有關雲代碼示例的好教程。解析服務器雲代碼設置ACL

Parse.Cloud.afterSave('_User', function(req) { 

    var user = req.user; 
    var acl = new Parse.ACL(); 
    acl.setReadAccess(req.user, true); 
    acl.setWriteAccess(req.user, true); 
    user.setACL(acl); 
    user.save(); 

    }); 


    Parse.Cloud.afterSave('userSetting', function(req) { 

    var userSet = req.object; 

    var acl = new Parse.ACL(); 
    acl.setReadAccess(Parse.User.current().id, true); 
    acl.setWriteAccess(Parse.User.current().id, true); 
    userSet.setACL(acl); 
    userSet.save(); 

    }); 

回答

0

我想出了下面的代碼。問題是我在嘗試將ACL添加到請求的對象時嘗試使用「afterSave」方法,但是,ACL應該在保存之前添加,或者如果應該在保存之後完成,則應該再次檢索對象然後添加ACL。

Parse.Cloud.beforeSave('userSetting', function(req, res) { 

var acl = new Parse.ACL(); 
acl.setReadAccess(req.user, true); 
acl.setWriteAccess(req.user, true); 
req.object.setACL(acl); 
res.success(); 

});