HTML Server-Sent 事件
- ပြီးအခြားအခြား HTML5 ဝတ္ထု
- နောက္အခြားအခြားအခြား HTML အမျိုးအစား
Server-Sent 事件允许网页从服务器获得更新。
Server-Sent 事件 - One Way Messaging
Server-Sent 事件指的是网页自动从服务器获得更新。
以前也可能做到这一点,前提是网页不得不询问是否有可用的更新。通过 Server-Sent 事件,更新能够自动到达。
例如:Facebook/Twitter 更新、股价更新、新的博文、赛事结果,等等。
ဘာသာ အကျိုးသမား
အချက်အလက် အချို့ အမှတ် သည် ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား အပြင်းအထန် အကျိုးသမား ပေးသူ ဘာသာ ကို ပြန်လည်ကူးယူပြီး ပေးသွင်းသော ဘာသာ ကို အမှတ်
API | |||||
SSE | 6.0 | မမှုပ်နှံချင် | 6.0 | 5.0 | 11.5 |
ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား ကို လက်ခံခြင်း
EventSource အချက်အလက် သည် ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား ကို လက်ခံခြင်း အတွက် သုံးပြီး ရသည်။
အချက်အလက်
var source = new EventSource("demo_sse.php"); source.onmessage = function(event) { document.getElementById("result").innerHTML += event.data + "<br>"; };
အချက်အလက် အချက်အလက်
- အချက်အလက် အကျိုးသမား အတွက် အချက်အလက် အချက်အလက် ကို အချက်အလက် ပေးသူ ဘာသာ ကို ကူးယူပြီး ပေးသွင်းလိုက် အချက်အလက် အတွက် အချက်အလက် ပေးသူ ဘာသာ အမှတ် (ဥပမာ အဖြစ် အချက်အလက် ပေးသူ ဘာသာ အမှတ် "demo_sse.php")
- အချက်အလက် အချို့ လက်ခံထားသည့် အခါတွင် အချက်အလက် အကျိုးသမား ဖြစ်ပွားသည်
- onmessage အကျိုးသမား ဖြစ်ပွားချိန်တွင် လက်ခံထားသော အချက်အလက် ကို id အဖြစ် "result" ဖြင့် ထည့်သွင်းလိုက်
ဆိုင်ကြယ် အကျယ်အဝန်း အကျိုးသမား ကို တွေ့ကြုံခြင်း
TIY အချက်အလက် တွင် သင်သည် ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား ကို ချက်ချင်း ပေးသူ ဘာသာ ကို တွေ့ကြုံခြင်း အချက်အလက် ကို ရေးသားထားသည်။
if(typeof(EventSource) !== "undefined") { // သင့်ကို အောင်မြင်၍ ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား မမှုပ်နှံချင် // အချက်အလက် အချို့..... } // ပြောပါ၊ ဆိုင်ကြယ် အကျယ်အဝန်း ပေးသူ အကျိုးသမား မမှုပ်နှံချင် }
ဆိုင်ကြယ် အခြေခံ အချက်အလက်
အထင်ကြီးသော အကျိုးသမား ပြောင်းလဲကုန်း တော်လှန်ခြင်းအတွက် သင်သည် အခြေခံ အချက်အလက် တွင် ရှိသော ပြောင်းလဲကုန်း ပေးသူ အကျယ်အဝန်း ကို ပေးနိုင်သည့် ဆိုင်ကြယ် သုံးပြီး ရသည်။ ဥပမာ အဖြစ် ပြန်လည်ရေးသား လုပ်ငန်း ကို သင်သည် ပေးနိုင်သည်။
服务器端事件流的语法非常简单。请把 "Content-Type" 报头设置为 "text/event-stream"。现在,您可以开始发送事件流了。
PHP 中的代码 (demo_sse.php):
ASP 中的代码 (VB) (demo_sse.asp):
<% Response.ContentType = "text/event-stream" Response.Expires = -1 Response.Write("data: The server time is: " & now()) Response.Flush() %>
代码解释:
- 把报头 "Content-Type" 设置为 "text/event-stream"
- 规定不对页面进行缓存
- 输出要发送的日期(始终以 "data: " 开头)
- 向网页刷新输出数据
EventSource 对象
在上例中,我们使用 onmessage 事件来获取消息。不过还可以使用其他事件:
အခြားအရာပြု | အကြောင္းကြားခြင္း |
---|---|
EventSource အကြောင္းကြားခြင္း | အကြောင္းကြားခြင္း |
onopen | onmessage |
onerror | အခြားအရာပြု |
- ပြီးအခြားအခြား HTML5 ဝတ္ထု
- နောက္အခြားအခြားအခြား HTML အမျိုးအစား