чтобы понять о чем я, можно самим завалить сервер:
для начала, скачать и установить:
git clone [url]https://gist.github.com/18f598a8576bd5f6ed84.git[/url] ws && cd ws && npm i
ps уберите [ url ] [/ url] - они не нужны))
затем запустить:
node server.js
затем перейти на
http://localhost:3000
Далее открыть браузерную консоль, и:
создать соединение:
var x = new WebSocket('ws://localhost:3000/')
слушать событие:
x.onmessage = function (e) {console.log(e.data)}
// отправить 0 на сервер:
x.send(0)
// вернет 'Hello'
// отправить 1 на сервер:
x.send(1)
// вернет 'World'
// отправить 2 на сервер:
// сервер не нашел нужную функцию и упал ))
Я это к чему?
Если ограничивать юзеров на пороге входа, то не нужно будет отлавливать их по всему серверу!
В реальных приложениях x.send(0) и x.send(1) - отправляет программа, поэтому нет смысла ставить фильтры на каждое новое входящее сообщение!
Отлавливать нарушителей можно проверяя origin! Но как отловить их когда origin совпадает?