Thema interessiert mich, aber wieso sollte der Code im verlinkten Dokument ein stream sein? Ich sehe nur eine einmalige Ausgabe:
Dann warte mal 10 Sekunden oder passe das PHP-Skript an:
<!DOCTYPE html>
<html>
<!-- FILE: /var/www/Tests/Server-Sent-Events.html -->
<body>
<h1>Getting server updates</h1>
<div id="result"></div>
<script>
if(typeof(EventSource) !== "undefined") {
var source = new EventSource("Server-Sent-Events.php");
source.onmessage = function(event) {
document.getElementById("result").innerHTML = event.data;
};
} else {
document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
}
</script>
</body>
</html>
"Sender":
<?php
## FILE: /var/www/Tests/Server-Sent-Events.php
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
$time = date('r');
echo "retry: 1000\n";
echo "data: The server time is: {$time}\n\n";
flush();
?>
Wobei das nichts ist, was man nicht auch mit einem gewöhnlichem XHR-Request hinbekommt, bei welchem man die Daten (data: ...) und die Metainformationen (retry: ..., id: ....) brav in JSON verpackt.