События, отправленные сервером, остановить, начать с нового параметра

пожалуйста помоги.

Я использую Server Sent Events для динамического обновления веб-сайта на основе данных, хранящихся в базе данных.

Теперь я хочу передать новый параметр ('abc.php/?lastID=xxx') обратно в сценарий PHP на основе данных, полученных в предыдущем сообщении.

Я понимаю, что могу использовать event.close, чтобы остановить текущий «поток», но я изо всех сил пытаюсь понять, как использовать один и тот же 'EventListener' для каждого нового EventSource, где динамически создается URL-адрес.

Может кто-нибудь указать мне в правильном направлении, пожалуйста?

Спасибо,


person theiOSDude    schedule 03.12.2012    source источник


Ответы (1)


Ok потратил некоторое время на то, чтобы лучше понять Javascript.

var source = new EventSource("xyz.php?last=0");
source.addEventListener('message', onMessageHandler,false);

function onMessageHandler(event) {
   console.log(event.data);//just for debug purposes

   event.target.close(); //close current stream.
   var last = "1234"; // loaded from event.data in my solution.
   var sourceNew = new EventSource("xyz.php?last=" + last); // start another 
   sourceNew.addEventListener('message', onMessageHandler, false); //event

}

и я, кажется, решил проблему, которая у меня была.

Ta

person theiOSDude    schedule 04.12.2012
comment
Можете ли вы поделиться файлом внутри вашего PHP-файла? - person ErickBest; 26.04.2016