使html Web Socket程序不断刷新响应

时间:2013-03-20 19:22:36

标签: javascript html websocket

我看过一个简单的WebSocket HTML文件,如下所示,用于查看Web Socket响应??

这样可以正常工作(意味着它显示来自该Web Socket URL的响应),但问题是,一旦打印出响应就会断开连接)并且不会连续刷新响应

请告诉我是否可以连续制作以下程序打印响应?

<!DOCTYPE html>
<meta charset="utf-8" /> 
<title>WebSocket Test</title> 
<script language="javascript" type="text/javascript"> 
var wsUri = "ws://echo.websocket.org/";
var output;
function init() 
{ 
    output = document.getElementById("output"); testWebSocket();
}

function testWebSocket() 
{
websocket = new WebSocket(wsUri); 
websocket.onopen = function(evt) { onOpen(evt) };
websocket.onclose = function(evt) { onClose(evt) };
websocket.onmessage = function(evt) { onMessage(evt) };
websocket.onerror = function(evt) { onError(evt) };
}

function onOpen(evt)
{
    writeToScreen("CONNECTED");
    doSend("WebSocket rocks"); 
}

function onClose(evt)
{
    writeToScreen("DISCONNECTED");
}

function onMessage(evt)
{
    writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data+'</span>');
    websocket.close(); // Removed this line , seeing the below comments .
}

function onError(evt) 
{
writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data);
}

function doSend(message) 
{
writeToScreen("SENT: " + message);  websocket.send(message); 
}

function writeToScreen(message)
{
var pre = document.createElement("p");
pre.style.wordWrap = "break-word"; 
pre.innerHTML = message;
output.appendChild(pre); 
}



window.addEventListener("load", init, false);

</script>  
<h2>WebSocket Test</h2> 
<div id="output"></div> 
</html>

0 个答案:

没有答案