使用 Firebase 和匿名用户设置 Stream 活动 Feed 的推荐方法是什么?



我想显示一个全局活动提要和对网站访问者的反应计数(没有用户帐户(。我的应用程序正在使用Firebase和React。

我想要什么:

  1. 显示一个全局提要(我将通过在每个活动中添加带有"to:"字段的活动来完成此操作(并在起始页上显示(到目前为止没有创建用户帐户,只读(
  2. 显示每个活动的点赞数(只读(
  3. 一旦有人点击关注或点赞按钮,我就会要求用户登录并创建一个帐户。这一步之后的过程对我来说很简单。我将使用Firebase函数来创建auth令牌,并使用客户端React组件来显示提要和反应

我没有找到一个解决方案来显示全局提要和对没有用户身份验证令牌的访问者的反应计数。

我脑海中的一些解决方案:

  • 一种方法是为每个网站访问者创建一个匿名Firebase用户和流身份验证令牌。一旦用户进行交互,我就会要求他创建自己的帐户,并使用Firebase迁移过程升级用户的帐户。从安全角度来看,这是非常安全的,但我会在后端有很多匿名用户
  • 另一种方法是创建一个全局用户,并使用auth令牌来显示提要和点赞。一旦有人进行交互,我就会要求用户登录。由于活动提要产品没有只读的Stream用户帐户,这可能会导致安全问题

您有其他解决方案吗?

我找到了一种使用JWTScopeToken助手函数为客户端创建只读令牌的方法。(Feed-wide只读令牌(

const streamSigner = require('getstream/lib/signing')
const apiSecret = '###APISECRET###'
const clientToken = streamSigner.JWTScopeToken(apiSecret, 'feed', 'read', {'feedId': '*', userId: "global"})
console.log("read-only client token for all feeds", clientToken)

使用此令牌a可以向新访问者显示用户和全局提要。我不再需要创建匿名用户。

相关内容

最新更新