<!-- the message's input --> <input id="input" type="text" /> <!-- when clicked then an iris websocket event will be sent to the server, at this example we registered the 'chat' --> <button onclick="send()">Send</button> <!-- the messages will be shown here --> <pre id="output"></pre> <!-- import the iris client-side library for browser--> <script src="/iris-ws.js"></script> <script> var scheme = document.location.protocol == "https:" ? "wss" : "ws"; var port = document.location.port ? (":" + document.location.port) : ""; // see app.Get("/echo", ws.Handler()) on main.go var wsURL = scheme + "://" + document.location.hostname + port+"/echo"; var input = document.getElementById("input"); var output = document.getElementById("output"); // Ws comes from the auto-served '/iris-ws.js' var socket = new Ws(wsURL) socket.OnConnect(function () { output.innerHTML += "Status: Connected\n"; }); socket.OnDisconnect(function () { output.innerHTML += "Status: Disconnected\n"; }); // read events from the server socket.On("chat", function (msg) { addMessage(msg); }); function send() { addMessage("Me: " + input.value); // write ourselves socket.Emit("chat", input.value);// send chat event data to the websocket server input.value = ""; // clear the input } function addMessage(msg) { output.innerHTML += msg + "\n"; } </script>