HTML5 服务器发送事件(Server-Sent Events, SSE):实时数据传输的新篇章
<!DOCTYPE html>
<html>
<head>
<title>Server-Sent Events Demo</title>
<script type="text/javascript">
if(typeof(EventSource) !== "undefined") {
var source = new EventSource("sse_stream.php");
source.onmessage = function(event) {
document.getElementById("result").innerHTML += event.data + "<br>";
};
source.onerror = function(event) {
console.error("EventSource failed.");
};
} else {
document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
}
</script>
</head>
<body>
<div id="result"></div>
</body>
</html>
在这个例子中,我们首先检查浏览器是否支持EventSource
。如果支持,我们创建一个新的EventSource
对象,指向名为sse_stream.php
的服务端脚本。每当服务器有新消息发送时,onmessage
事件会触发,并将数据添加到页面的result
元素中。如果发生错误,onerror
事件会被触发,并在控制台中记录错误信息。如果浏览器不支持SSE,则会在页面上显示一条消息。
评论已关闭