如何在stream-js中获取反应及子反应的ownReactions用户本人反应数据
Stream-js v7.2.11 获取当前用户对动态/评论的点赞反应解决方案
生效前置条件
- Client实例必须完成当前用户身份认证:前端场景需先调用
client.setUser()传入当前用户信息及有效token;后端场景调用时需使用对应用户的token初始化Client,或在请求参数中附加user_id指定目标用户。未明确用户身份时,接口无法识别要返回哪个用户的专属反应,会默认返回全量反应数据。 - 若配置后仍无法获取对应数据,可先校验当前用户token的权限范围,确认包含对应Feed的读取权限,排除权限不足导致的字段被过滤问题。
完整调用代码
需补充withOwnChildrenReactions: true参数,同时拉取动态、评论两个层级的本人反应:
client.feed('user', 'Amy').get({ withReactionCounts: true, withOwnReactions: true, // 新增该参数,用于获取评论层级的本人反应 withOwnChildrenReactions: true })
结果读取规则
- 单条动态的本人反应存储在对应动态数据的
own_reactions数组中,该数组仅包含当前用户对这条动态的所有反应 - 单条评论的本人反应存储在对应评论数据的
own_children_reactions数组中,该数组仅包含当前用户对这条评论的所有反应
直接读取对应数组是否存在点赞类型的反应,即可判断用户是否已点赞对应内容。
版本说明
v7.2.11版本已原生支持上述所有参数,无需使用旧版本的临时补丁方案,正确配置后即可拿到预期数据。
内容的提问来源于stack exchange,提问作者guekling
相关产品推荐
相关产品推荐

