HTML5學習 十一 伺服器傳送事件

2022-03-12 06:43:03 字數 1466 閱讀 3563

參考教程:

html5 伺服器傳送事件(server-sent event)允許網頁獲得來自伺服器的更新。

server-sent 事件指的是網頁自動獲取來自伺服器的更新。

以前也可能做到這一點,前提是網頁不得不詢問是否有可用的更新。通過伺服器傳送事件,更新能夠自動到達。

例子:facebook/twitter 更新、估價更新、新的博文、賽事結果等。

eventsource 物件用於接收伺服器傳送事件通知:

doctype html

>

<

html

>

<

body

>

<

h1>獲得伺服器更新

h1>

<

div

id="result"

>

div>

<

script

>if(

typeof

(eventsource)

!=="

undefined")

; }

else

script

>

body

>

html

>

例子解釋:

在上面的 tiy 例項中,我們編寫了一段額外的**來檢測伺服器傳送事件的瀏覽器支援情況:

if(typeof(eventsource)!=="undefined")

else

為了讓上面的例子可以執行,您還需要能夠傳送資料更新的伺服器(比如 php 和 asp)。

伺服器端事件流的語法是非常簡單的。把 "content-type" 報頭設定為 "text/event-stream"。現在,您可以開始傳送事件流了。

<?php

header('content-type: text/event-stream');

header('cache-control: no-cache');

$time = date('r');

echo "data: the server time is: \n\n";

flush();

?>

<%

response.contenttype="text/event-stream"

response.expires=-1

response.write("data: " & now())

response.flush()

%>

**解釋:

在上面的例子中,我們使用 onmessage 事件來獲取訊息。不過還可以使用其他事件:

事件描述

onopen

當通往伺服器的連線被開啟

onmessage

當接收到訊息

onerror

當錯誤發生

HTML 5 伺服器傳送事件

原文 html5 伺服器傳送事件 server sent event 允許網頁獲得來自伺服器的更新。server sent 事件指的是網頁自動獲取來自伺服器的更新。以前也可能做到這一點,前提是網頁不得不詢問是否有可用的更新。通過伺服器傳送事件,更新能夠自動到達。例子 facebook twitter...

HTML 5 伺服器傳送事件

以前也可能做到這一點,前提是網頁不得不詢問是否有可用的更新。通過html5的伺服器傳送事件,能夠自動獲取更新。eventsource物件並不能夠自行設定重新整理時間,這依賴於瀏覽器的具體實現,比如在chrome中的重新整理時間是3秒,但是在firefox中重新整理時間為5秒 header conte...

HTML5 伺服器傳送事件

html5 伺服器傳送事件 server sent event 允許網頁獲得來自伺服器的更新。1.server sent 事件 單向訊息傳遞 server sent 事件指的是網頁自動獲取來自伺服器的更新。以前也可能做到這一點,前提是網頁不得不詢問是否有可用的更新。通過伺服器傳送事件,更新能夠自動到...