6
Backbone 및 javascript sdk를 사용하여 인앱 채팅을 할 때 PubNub를 사용하고 있습니다. 다른보기로 이동하여 채팅 창으로 돌아 가면 메시지를 게시 할 때 사본을 받게됩니다. 다시 검색하면 다시 3 배로 메시지가 수신됩니다.Pubnub에서 중복 메시지를 수신 중
채팅 페이지로 돌아올 때마다 다시 구독하고 있다고 생각합니다. 그러나 구독 취소 메시지를받지 못하고 ' 그 밖의 구독처에 관한 문서를 찾지 마십시오.
이미 가입했는지 확인할 수있는 수표가 있습니까?
내 코드는 다음과 같습니다
// INIT
var channel = 'my_channel';
var pubnub = PUBNUB.init({
subscribe_key : 'demo',
publish_key : 'demo'
});
function chat(message) {
if (message.uid == "xxx") {
$("#convo").append('<div class="isaid">' + message.message + '</div><div class="clear clearfix"></div>');
} else {
$("#convo").append('<div class="hesaid">' + message.message + '</div><div class="clear clearfix"></div>');
}
}
pubnub.history({
channel : channel, // USER_ID Channel
limit : 30, // Load Last 50 Messages
callback : function(msgs) {
pubnub.each(msgs[0], chat);
}
});
pubnub.subscribe({
channel: 'my_channel',
callback: function(data) {
chat(data);
}
});
pubnub.publish({
channel: 'my_channel',
message: data
});
메시지를 하나 보내고 추가해야합니다 여러 번받은 - 내가 응용 프로그램을 다시로드하면 기록이 중복되지 않습니다. – Citylogic
'pubnub.unsubscribe ({channel : 'my_channel'});'작동하지 않습니까? – sb9
'close : function()'에 넣으려고했으나 뷰가 닫히지 않았습니다. 다른 곳에서 탈퇴해야하는지 잘 모르겠습니다. – Citylogic