39,087
社区成员
发帖
与我相关
我的任务
分享
<?php
/**
* Created by PhpStorm.
* User: sony
* Date: 2015/9/10
* Time: 21:34
*/
header('Content-Type:text/event=stream');
for ($i = 0; $i < 100; $i++) {
date_default_timezone_set("Asia/Shanghai");
echo 'data:' . date('Y-m-d H-i-s');
echo "\n\n";
ob_flush();
sleep(1);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>HTML5服务器推送事件</title>
<script src="indexJs.js"></script>
</head>
<body>
<h1>Status:</h1>
<div id="statusDiv"></div>
<h1>Server Data:</h1>
<div id="serverData"></div>
</body>
</html>
/**
* Created by sony on 2015/9/11.
*/
var statusDiv, serverData;
var SERVER_URL = "server.php";
window.onload = function () {
statusDiv = document.getElementById("statusDiv");
serverData = document.getElementById("serverData");
startListenServer();
}
function startListenServer() {
statusDiv.innerHTML = "connecting server";
var es = new EventSource(SERVER_URL);
es.onopen = openHandler;
es.onerror = errorHandler;
es.onmessage = messageHandler;
}
function openHandler(e) {
statusDiv.innerHTML = "server open";
}
function errorHandler(e) {
statusDiv.innerHTML = "Error";
}
function messageHandler(e) {
serverData.innerHTML = e.data;
}