Some test on WebSocket API

Websocket is a new protocol to enable the socket-based connection between the web client and server. It will maintain some persistent connection between web client and web server. It is based HTML5.

The only problem is not all the browsers and web servers are supporting HTML5. I am using firefox 11 and chrome 18.0.1025.168 to test. It works great.

The following is a test using HTML5 and websocket:

<!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(); }
    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>

About henry416
I am a computer technology explorer and an university student based on Toronto. If you have any question, please feel free to discuss and comment here

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s