【问题标题】:How to generate pubnub UUID?如何生成 pubnub UUID?
【发布时间】:2021-08-29 05:26:33
【问题描述】:

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

我已经设置了后端和前端的所有内容,

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

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

Pubnub 文档似乎最糟糕,我没有找到任何有关生成 UUID 的信息,谁能告诉我如何解决它?

【问题讨论】:

标签: pubnub


【解决方案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 key(这与PubNub Access Manager有关,与本文无关,但应该在生产应用程序中实现)
  • 使用上面的方法来初始化你的 PubNub 对象
  • 每次创建 PubNub 对象时,每个用户/客户端/设备都应使用相同的 UUID
  • 每个服务器实例都应该有自己的 UUID。这可以只是一个服务器实例名称或标识符

为什么 UUID 在 PubNub 中很重要?

同样,这一切都在UUID Impact section 下的同一文档页面中进行了详细说明,但这里是重点:

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

有一个实时的一天! ;)

【讨论】:

  • 这个答案太好了,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-18
  • 2017-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多