html 5サーバ送信イベントの実装

1653 ワード

ページ



	
	Document
	


	

Status:

Server Data


jsコード
しいEventSourceオブジェクトを し、 ページを するURL(この ではdemo_sse.php)を します.
が されるたびにonmessageイベントが します.
onmessageイベントが すると、 データをidが「result」の にプッシュする.
var servarData ,statusDiv;
var SERVER_URL= "WebForm1.aspx";
window.onload =function(){
	servarData = document.getElementById("serverData");
	statusDiv = document.getElementById("statusDiv")
	startlistenServer();
	
}

function startlistenServer () {
	statusDiv.innerHTML = "start connect"
	var es = new EventSource(SERVER_URL);
	es.onopen =openHandler;
	es.onerror = erroHandler;
	es.onmessage =messgeHandler;
}
 
 function openHandler (e) {
 	statusDiv.innerHTML = "server open"
 }

function erroHandler (e) {
	statusDiv.innerHTML ="Error"
}

function messgeHandler (e) {
	servarData.innerHTML = e.data;
}

Netバックグラウンドコード
ヘッダ「Content-Type」を「text/event-stream」に
ページをキャッシュすることを する.
( に「data:」で まる)Webページへの データのリフレッシュ
 
            Response.ContentType = "text/event-stream";
            Response.Expires = -1;
            string str;

            for (int i = 0; i < 100; i++)
            {
                str = "data:" + DateTime.Now.ToLongTimeString() + "

"; Response.Write(str); Thread.Sleep(1000); Response.Flush(); }