共计 697 个字符,预计需要花费 2 分钟才能阅读完成。
Client Side:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>服务器发送事件</title>
</head>
<body>
<h1>获取服务器更新</h1>
<div id="result"></div>
</body>
<script>
if (typeof(EventSource) !== "undefined") {
//创建新的EventSource对象,然后发送更新页面的URL.
//每接收一次更新,就触发message事件,添加onmessage事件处理程序.
//最后将接收到的数据输入到页面.event对象的data属性中保存着更新的数据.
var source = new EventSource("1.php");
source.onmessage = function (event) {
var result = document.getElementById("result");
result.innerHTML += event.data + '<br>';
};
} else {
document.getElementById("result").innerHTML = "浏览器不支持";
}
</script>
</html>
Server Side:
<?php
header("Content-type: text/event-stream");
header("Cache-Content: no-cache");
$time = date("Y-m-d H:i:s");
echo "data: The server time is: {$time}\n\n";
flush();
?>
正文完