0

サーバー送信イベントを使用してソーシャルフィードを実行し、リアルタイムで更新しています。

Javascriptコード:

var source = new EventSource('php/stream.php?type=1&encoding=data');
source.onmessage = function(e) {
var data = JSON.parse(e.data);
$.each(data, function(id, object) { 
$('#'+ id).append('<div class="main">'+ object["content"]+'</div><!-- .main -->');
});
};

私のPHPが送信するもの:

id: 5
data: json object
retry: 3000

問題:スクリプトはかなりうまく機能しますが、10秒後に+-。Firefoxが接続を失い、新しいデータを挿入していないようです。SafariとChromeでは問題ありません。

4

2 に答える 2

1

この正確な問題があり、ローカル変数を作成すると、firefox の eventsource が正しく機能しないことがわかりました。私にとっては、varソースを宣言する前に削除しましたが、うまくいきました。$(document).ready(...)で宣言しない限り、中に入れても問題ありません。var

于 2015-09-08T22:54:28.287 に答える
0

イベントソースコードが内部にあったため、同じ問題が発生しました

$(document).ready(function () {    
   ...
});

それを取り出す。

于 2013-10-17T13:19:08.637 に答える