您的位置:首页 > Web前端 > HTML5

HTML5 服务器发送事件(server-sent events)

2016-06-14 20:10 483 查看
HTML5服务器发送事件允许网页获得来自服务器的更新

1.接收服务器发送事件通知

一直更新时间

<h1>获取服务端更新数据</h1>
<div id="result"></div>

<script>
if(typeof(EventSource)!=="undefined")
{
var source=new EventSource("demo_sse.php");//创建一个对象
source.onmessage=function(event)//每接收到一次更新,就会发生onmessage事件
{
document.getElementById("result").innerHTML+=event.data + "<br>";//当onmessage事件发生时,把已接收的数据推入id为result的元素中
};
}
else
{
document.getElementById("result").innerHTML="抱歉,你的浏览器不支持 server-sent 事件...";
}
</script>


服务器端代码

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

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


2.EventSource对象

onopen 当通往服务器的连接被打开

onmessage 当接收到消息

onerror:当发生错误
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息