假设通过Parse应用程序,用户A向Facebook好友B发送邀请以加入他编辑对象O(例如,参与正在进行的对话)。
B通过Facebook通知此事,但由于他尚未注册该应用程序,因此尚未作为PFUser存在,因此A无法将其添加到O的ACL中。
然而,当B将来注册时,他应该立即获得对象O的写访问权。他不能在客户端添加自己,因为他没有写入权限。因此必须在后端实现。
问题:实现以下目标的云代码是什么样的:
(我对java脚本/云代码没有任何经验,因此示例代码对于开始我的方向非常有帮助。)
谢谢!
答案 0 :(得分:2)
在“可能代码”中,您可以告诉它使用主密钥,因此它可以绕过正常的限制。
我希望这将是一个多步骤的过程:
Cloud Code可以作为新邀请的朋友访问request.user
,并使用标识符。然后,它可以搜索所有InvitationToEdit记录,并为每个记录添加request.user
到对象O的ACL。
许多执行此类操作的系统会生成GUID作为单个邀请的令牌,而接受邀请的页面将允许他们登录或注册。完成后,处理并丢弃单个令牌。通常在令牌上有某种到期(例如几天)。
更新:(带链接)
您可以了解如何撰写Cloud Code functions。基本上这些函数的内容只是JavaScript,因此Updating Objects上的文档值得阅读,以及其他文档。