2015-02-11 48 views
0

該方案與Evernote類似:用戶可以擁有多個可以公開查看的筆記,但不能由除自己以外的任何人編輯。Parse.com:在更新對象之前驗證用戶?

(我已經實現創造筆記,但現在感到困惑的更新筆記讀過的data & security文檔,但它並沒有幫助我很多。雖然我知道ACL)。

我在後臺嘗試這樣做:

Parse.beforeSave("Notes", function (request, response) { Parse.User.current(); });

但我得到了錯誤,說空(或undefined忘記確切的錯誤後悔?)不是一個函數。我認爲這意味着Cloud Function中沒有可用的Parse.UserParse.User.current

然後根據a question in archive of Parse.com forum我發現:

Parse.beforeSave("Notes", function (request, response) { var userId = new Parse.User({id : request.params.userId}); });

但它似乎並不像身份驗證的方法。我的意思是,通過這個,我只信任數據表格客戶端沒有驗證它。

回答

0

request.user將包含發出請求的用戶對象。做任何檢查你必須對該對象進行檢查,並返回一個錯誤,如果用戶不允許編輯它。

更好的是,在每個音符對象上設置正確的ACL,例如「Public Read」並且只爲創建者寫入訪問權限。這應該使beforeSave鉤子是不必要的。

相關問題