如何生成pubnub UUID?

时间:2021-06-12 16:53:03

标签: pubnub

我使用 pubnub 构建聊天应用程序,

我已经设置了后端和前端的一切,

但在前端,它需要另一个 UUID 参数。谁能告诉我在哪里可以获得UUID?如何使用pubnub生成它?我需要将 UUID 存储在我的数据库中吗?

const pubnub = new PubNub({
  publishKey: 'myPublishKey',
  subscribeKey: 'mySubscribeKey',
  uuid: 'myUniqueUUID'
});

Pubnub docs 看起来最糟糕,我没有找到任何关于生成 UUID 的信息,谁能告诉我我该如何解决?

1 个答案:

答案 0 :(得分:1)

PubNub UUID 管理最佳实践

UUID 应该像首字母缩略词所暗示的那样,唯一标识用户(或设备、服务器实例等)。 UUID 可以是您认为适合在您的应用程序中完成此操作的任何内容,但您应该遵循一些关于 PubNub 的准则。

这在 PubNub 平台文档中有详细记录,所以我不会在这里重复所有内容。请查看 Connections 部分下的 Users & Devices: Identity Management docs 以了解完整故事。

TL;DR

  • 在用户注册为新用户时为其生成 UUID,并将其存储在您系统中的用户个人资料记录中(或使用 PubNub Objects: UUIDMetadata)。
  • 在用户成功注册/登录后,将以下内容传回给用户(客户端 PubNub 应用程序):
    • 订阅密钥
    • 发布密钥(仅当客户端可以发送消息时才需要)
    • uuid(PN SDK 中有 UUID 生成器 API - 您可以自己制作,但应避免使用任何 PII 作为 UUID)。
    • auth 密钥(这与 PubNub Access Manager 有关,与本文无关,但应为生产应用程序实施)
  • 使用上面的方法来初始化你的 PubNub 对象
  • 每次创建 PubNub 对象时,每个用户/客户端/设备都应使用相同的 UUID
  • 每个服务器实例都应该有自己的 UUID。这可以只是服务器实例名称或标识符

为什么 UUID 在 PubNub 中很重要?

同样,在 UUID Impact section 下的同一个文档页面中详细说明了所有内容,但这里是重点:

  • 出于计费目的 - 用于计算 MAU(每月活跃用户)
  • 为了使 Presence 服务正常工作 - uuid 值用于在用户订阅频道以及所有 Presence 事件和 API 时生成 join 事件。
  • 为了轻松进行故障排除 - 如果您需要联系 PN 支持,如果我们可以挑选出一个 UUID,就可以更轻松地在多个订阅和其他 API 调用中识别用户。

有一个实时的一天!!! ;)