В последнее время я играю с WebSockets, как мой последний игровой проект.Я заметил небольшую задержку сообщений и даже отбрасывание сообщений, когда я подключил контроллер клавиатуры к клиенту WebSocket, который просто отправляет нажатия / отпускания клавиш на сервер.
Так что, если я отправляю несколько сообщений в быстрой последовательностиПохоже, что Firefox делает паузу на некоторое время между каждым сообщением или даже отбрасывает их, если их слишком много.
Тот же код работает в Chrome без задержек или отбрасывания сообщений.Это преднамеренно?
Редактировать: Вот упрощенная страница, на которой проблема возникает со мной:
<code><!DOCTYPE html>
<html lang="en">
<head>
<title>WebSocket Test</title>
<meta charset="utf-8"/>
<script>
socket = new WebSocket("ws://example.com/websockettest");
socket.onopen = function() { message("[[ Connected ]]"); }
socket.onclose = function() { message("[[ Disconnected ]]"); }
socket.onmessage = function(e) { message(e.data); }
function message(msg) {
document.getElementById("messages").textContent += msg + "\n";
}
</script>
</head>
<body>
<input type="button" value="Send" onclick="socket.send('Hey!');"/>
<input type="button" value="Send two" onclick="socket.send('Hey once!');
socket.send('Hey twice.');"/>
<pre id="messages">
Обратите внимание, что не имеет значения, нажимаю ли я несколько раз кнопку «Отправить» или просто нажимаю «Отправить два».