Есть класс, который организует запросы к серверу. Среди методов есть один, который отвечает за WebSocket. Данный метод принимает параметры и инициализирует соединение с сервером.
Requests.prototype.wsQuery = function(msg, callback) {
// Инициализируется каждый раз при вызове метода. Бред!
var w = new ws('wss://api.something.com/ws/');
w.on('open', function() {
w.send(JSON.stringify(msg));
});
w.on('message', function(res) {
callback(res);
});
}
// ***
module.exports = new Requests;
Проблема в том, что при нескольких инициализациях соединение вылетает `ошибка 429`, то есть слишком много запросов к серверу...
Как организовать код, что бы инициализация WebSocket происходила всего один раз? При объявление каждого объекта Request указывать в параметрах WebSocket? Или может как-то иначе можно?
const w = new ws('wss://api.something.com/ws/');
let obj = Request(w);
let obj_2 = Request(w);
// ***