javascript - 重新订阅时,Pubnub 会收到所有消息

标签 javascript pubnub subscribe

我有这样的场景:

一个客户:

var c = PUBNUB.init({
    publish_key  : 'p_key',
    subscribe_key: 'sub_key',
    uuid:'my_client'
});

两个 channel :ch1 和 ch2

在后端使用 php,我将消息发布到 ch1 和 ch2。

客户端订阅ch1并接收消息,然后客户端取消订阅ch1并订阅ch2。

后端仍然向ch1发布消息(取消订阅);

客户端重新订阅ch1,并接收客户端取消订阅时在ch1上发布的所有消息。

我不想接收这些消息,因为消息是重新加载页面的事件。有没有办法解决这个场景?

最佳答案

目前,pubnub javascript SDK 的默认行为是每次订阅时都会在本地存储中存储消息的保存点。如果客户端取消订阅并重新订阅,则该保存点将用于从客户端上次停止的位置继续。 'restore' 参数可以设置为 false 并按照 https://github.com/pubnub/javascript/blob/master/core/src/pubnub-common.js#L1081 传入。

关于javascript - 重新订阅时,Pubnub 会收到所有消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36025587/

相关文章:

pubnub - 是否可以发布到 pubnub 中的 channel 组? (流 Controller )

android - 如何解析 pubnub 历史回调响应中的数据?

javascript - 类型 'do' 上不存在属性 'Subscription'

angular - tap() 与 subscribe() 设置类属性

javascript - 如何使用 socket.io 包含外部 javascript 客户端?

javascript - 仅从 JSON 数据中选择特定值

java - Android - PubNub - 在每条发送的消息中传递用户的 UUID 或用户名

javascript - 触摸 Ar.js 中的 ar 对象

javascript - If/Else/Switch 返回错误结果

jquery - 如何在 youtube 订阅小部件上更改 CSS