网络零售商的终极网站
 HTML5。 入门的教训。  W3Schools 乌克兰语

西斯

HTML5 服务器发送的 Pod


您还可以获取有关课程的更多信息? (服务器发送事件 - SSE)

其它,服务器发送事件 (服务器发送事件 - SSE) дозволяють веб-сторінці отримувати оновлення з сервера.


服务器发送的 Pod 是单向通知

服务器发送的 Pod - це коли веб-сторінка автоматично отримує оновлення з сервера.

以前也是可以的,但是在网页上需要发出请求才能查看是否有更新。 服务器发送的主题会自动更新。

应用:Facebook/Twitter 更新、股票价格更新、新闻页面、体育赛事结果等。


浏览器支持

表中的数字表示浏览器的第一个版本,一般支持服务器发送的提交。

API
上交所 6.0 不做任何努力 6.0 5.0 11.5

取消服务器发送的细分通知

EventSource 对象用于显示有关服务器发送的事件的通知:

屁股

var 源 = 新事件源 (“demo_sse.html”);
源.onmessage = 函数(事件){
document.getElementById("结果").innerHTML += event.data + "<br> “;
};
自己尝试一下»

屁股的解释:

  • 访问 EventSource 的新对象并添加 URL 目录页面,然后同步视频(在源文件中“demo_sse.html”)
  • 一旦皮肤被移除,就会生成一条新消息
  • 如果你想查看 onmessage 中的内容,请在 id="result" 处输入以下内容

检查服务器发送的内容

在“Try It Yourself”应用程序中,有几行附加代码用于检查内容服务器发送的浏览器支持:

如果(typeof(EventSource)!==“未定义”){
// 所以! 鼓励向服务器提交!
  // 代码是什么......
} 别的 {
// 不幸的是,不支持向服务器发送消息。
}

服务器端代码示例

为了实现这一点,应用程序需要一个可以发送更新数据的服务器(例如,PHP 或 ASP)。

服务器端流程的语法很简单。 将“Content-Type”标头设置为“text/event-stream”。 现在您可以开始发送流了。

PHP 代码(demo_sse.html):

<?php
标头('内容类型:文本/事件流');
标头('缓存控制:无缓存');

$时间 = 日期('r');
echo "data: 服务器时间为:{$time}\n\n";
冲洗();
?>

ASP (VB) 中的代码 (demo_sse.asp):

<%
Response.ContentType =“文本/事件流”
响应.Expires = -1
Response.Write("data: 服务器时间为:" & now())
Response.Flush()
%>

代码解释:

  • 选中“Content-Type”和“text/event-stream”
  • 表示该页面不需要缓存(not cache)
  • 显示需要发送的数据。 (扎夫日迪 请参阅“data:”)
  • 将您的假期数据发送回网站

事件源对象

我们用屁股指着讲台 消息 для отримання повідомлень. Але доступні й інші події:

波迪伊 描述
开启 当私下连接到服务器时
消息 如果取消通知
错误 科利维尼克拉赦免



评论