如何使用PubNub发布回调来找出在出现错误时要重新发布的消息

use*_*449 8 java android pubnub

PubNub API中的发布回调返回如下消息 -

[1,"Sent","13729639808030640"]
Run Code Online (Sandbox Code Playgroud)

但是这并没有给出关于这个回调用于哪个消息的任何指示.如果发布错误,返回数组中的第一个值将为0.但是如何找出要重新发布的消息?

发布者可以高速发布消息,而不是在发布另一个消息之前等待接收回调.因此,当调用回调时,发布者可能已经发布了10条消息.

Ser*_*tov 3

PubNub REST API 也提供 JSONP 格式。您可以创建“回调函数”标识符到实际消息的映射,处理完成后,您可以使用响应中的“回调函数”标识符获取原始消息的参考。
例如:

https://pubsub.pubnub.com/publish/demo/demo/0/iosdev/m_2c453/%22Hello%20world2%22  
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,URI中有一个m_2c453,它将被服务器用于响应:

m_2c453([1,"Sent","14034711347326358"])
Run Code Online (Sandbox Code Playgroud)

在这里我们知道,它m_2c453已被用来发送"Hello world"消息。
但是,我认为依赖于平台的 PubNub SDK 应该为您处理所有这些。