2016-09-20 43 views
1

this page閱讀關於服務器發送的事件時,我對事件發生時間感到困惑。基本上,example shown有一個PHP腳本發送系統時間的網頁:3-4秒後收到服務器發送的事件

<?php 
    header('Content-Type: text/event-stream'); 
    header('Cache-Control: no-cache'); 

    $time = date('r'); 
    echo "data: The server time is: {$time}\n\n"; 
    flush(); 
?> 

雖然頁面接收並對其進行渲染:

if(typeof(EventSource) !== "undefined") { 
    var source = new EventSource("demo_sse.php"); 
    source.onmessage = function(event) { 
     document.getElementById("result").innerHTML += event.data + "<br>"; 
    }; 
} else { 
    document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events..."; 
} 

我的困惑是,服務器似乎發送消息每3-4秒:

The server time is: Tue, 20 Sep 2016 11:55:12 -0400 
The server time is: Tue, 20 Sep 2016 11:55:16 -0400 
The server time is: Tue, 20 Sep 2016 11:55:20 -0400 
The server time is: Tue, 20 Sep 2016 11:55:23 -0400 
The server time is: Tue, 20 Sep 2016 11:55:28 -0400 
The server time is: Tue, 20 Sep 2016 11:55:32 -0400 
The server time is: Tue, 20 Sep 2016 11:55:35 -0400 
The server time is: Tue, 20 Sep 2016 11:55:39 -0400 
The server time is: Tue, 20 Sep 2016 11:55:43 -0400 
The server time is: Tue, 20 Sep 2016 11:55:46 -0400 
The server time is: Tue, 20 Sep 2016 11:55:50 -0400 
The server time is: Tue, 20 Sep 2016 11:55:53 -0400 
The server time is: Tue, 20 Sep 2016 11:55:57 -0400 
The server time is: Tue, 20 Sep 2016 11:56:01 -0400 
The server time is: Tue, 20 Sep 2016 11:56:04 -0400 
The server time is: Tue, 20 Sep 2016 11:56:08 -0400 
The server time is: Tue, 20 Sep 2016 11:56:12 -0400 
The server time is: Tue, 20 Sep 2016 11:56:15 -0400 

但是,我沒有看到這個延遲無論是在服務器端還是在客戶端。它是網站服務器和我的瀏覽器之間的網絡滯後嗎?或者是別的什麼?

回答