WebSocketのEchoテスト

WebSocketのエコーテストを行うページを見つけたので、メモしておきます。

URL: https://www.websocket.org/echo.html

ブラウザフォームの中でテストする方法と、その下にローカルにHTMLを持ってきてテストするためのHTMLのコードがあります。

そのコードをちょっとだけ改造して、5回送信するようにしてみました。

↓↓改造したテストコードを埋め込み↓↓

WebSocket Test

↑↑↑ここまで埋め込み↑↑

埋め込んだコードのソースコード

<!DOCTYPE html>
<meta charset="utf-8" />
<title>WebSocket Test</title>
<script language="javascript" type="text/javascript">

var wsUri = "wss://echo.websocket.org/";
var output;

let count = 0;
const send = () => {  // function send(){ をこのように書けるっぽい
  count++;
  if(count <= 5){
    doSend("WebSocket rocks " + count);
  }
  if(count == 7){
    websocket.close();
  }
}

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) };
  setInterval(send, 1000);
}

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>

あと、WebSocketのサーバをRaspberry Pi + Pythonで実装する例を見つけたので、メモっておきます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)