在getstream上发布 Activity 时,我以角色的身份发送用户ID(存储在我们自己的数据库中)。在对象字段中,我也发送用户的其他信息,例如姓名/登记簿等,它们也在我们的数据库中。
假设有人更新了用户信息,例如名称在我们的应用程序中,该对象仍将在帖子中保留旧信息。如何以最佳方式处理这种情况?
最佳答案
Getstream中存储的所有 Activity 均已规范化,因此您无法更新存储在 Activity 中的用户名。最佳实践是不要将数据直接存储在Getstream Activity 中,而是将对数据的引用存储在自己的数据库中(就像您现在对actor字段所做的那样)。
{
"actor": "user:$USER_ID"
"object": "post:$POST_ID"
}
其中
$USER_ID
是您本地数据库中用户的ID,而$POST_ID
是您本地数据库中帖子的ID(可以是任何类型的数据,例如评论,帖子等)。还允许您在Getstream API上存储其他(自定义)字段。使用Getstream的集成软件包之一时,您可以免费获得此功能。您可以看看these packages看看他们是如何处理的。
关于getstream-io - 更新旧帖子的对象信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35449069/