PubNub:发布似乎不适用于 3G 网络
PubNub: Publish does not seem to be working for me on 3G network
我正在使用 PubNub。基本上做发布和订阅是没有问题的。但是,发布不适用于 3G 网络等慢速连接。 Wifi 还可以,但有人说 4G 也有同样的问题。有人知道怎么解决吗?
下面是我想做的
1. UserA opens a web page from PC and subscribe a channel.
2. UserA publishes data to the channel from mobile app.
3G/4G/LTE 移动网络上的 PubNub
调用 pubnub.subscribe(...)
方法时使用 backfill: true
选项。这允许您的设备在移动网络上接收消息。回填选项可防止移动网络延迟竞争条件。
// Setup
var channel = 'a'+Math.random();
var pubnub = PUBNUB({
ssl : true
, "publish_key" : "pub-c-aefb421c-b30a-4afc-bae4-b866c5ea3d69"
, "subscribe_key" : "sub-c-76f89e66-c3a9-11e5-b5a8-0693d8625082"
});
// Receive Message
pubnub.subscribe({
backfill : true
, channel : channel
, error : out
, connect : publish
, message : out
});
// Send Message
function publish() {
out("CONNECTED!");
pubnub.publish({
channel : channel
, error : out
, message : "SUCCESS IT WORKS!"
});
}
// Network Check
pubnub.time(function(a){out(a ? "NETWORK CHECK" : "NETWORK BAD")});
function out(m) {
document.getElementById("result").innerHTML
+= "<br>" + JSON.stringify(m);
}
<script src="https://cdn.pubnub.com/pubnub-dev.js"></script>
<h1>PubNub 3G/4G/LTE Network</h1>
<div id="result">PROCESSING_CONNECTIVITY...</div>
PubNub Mobile Network - Example Output
您也可以决定要其他选项。您还可以在 connect
回调中发出 pubnub.publish()
方法调用。
pubnub.subscribe({
channel : channel,
message : out,
connect : function() {
pubnub.publish({
channel : channel
, message : "SUCCESS IT WORKS!"
});
}
});
我正在使用 PubNub。基本上做发布和订阅是没有问题的。但是,发布不适用于 3G 网络等慢速连接。 Wifi 还可以,但有人说 4G 也有同样的问题。有人知道怎么解决吗?
下面是我想做的
1. UserA opens a web page from PC and subscribe a channel.
2. UserA publishes data to the channel from mobile app.
3G/4G/LTE 移动网络上的 PubNub
调用 pubnub.subscribe(...)
方法时使用 backfill: true
选项。这允许您的设备在移动网络上接收消息。回填选项可防止移动网络延迟竞争条件。
// Setup
var channel = 'a'+Math.random();
var pubnub = PUBNUB({
ssl : true
, "publish_key" : "pub-c-aefb421c-b30a-4afc-bae4-b866c5ea3d69"
, "subscribe_key" : "sub-c-76f89e66-c3a9-11e5-b5a8-0693d8625082"
});
// Receive Message
pubnub.subscribe({
backfill : true
, channel : channel
, error : out
, connect : publish
, message : out
});
// Send Message
function publish() {
out("CONNECTED!");
pubnub.publish({
channel : channel
, error : out
, message : "SUCCESS IT WORKS!"
});
}
// Network Check
pubnub.time(function(a){out(a ? "NETWORK CHECK" : "NETWORK BAD")});
function out(m) {
document.getElementById("result").innerHTML
+= "<br>" + JSON.stringify(m);
}
<script src="https://cdn.pubnub.com/pubnub-dev.js"></script>
<h1>PubNub 3G/4G/LTE Network</h1>
<div id="result">PROCESSING_CONNECTIVITY...</div>
PubNub Mobile Network - Example Output
您也可以决定要其他选项。您还可以在 connect
回调中发出 pubnub.publish()
方法调用。
pubnub.subscribe({
channel : channel,
message : out,
connect : function() {
pubnub.publish({
channel : channel
, message : "SUCCESS IT WORKS!"
});
}
});