Javascript - создание асинхронного интерфейса вокруг асинхронного WebSocket - PullRequest
0 голосов
/ 12 октября 2018

Мне интересно, возможно ли построить асинхронный интерфейс вокруг объекта webSocket, который по своей природе асинхронный.

Объект webSockect находится внутри класса / функции, которая публикует ряд методов: я хотел бы вызвать эти методы, отправить команду через websocket, дождаться ответа и вызвать стандартные методы как .then или.catch - мыслить как javascript Promise.

function x() {
    myWS.sendCmdA().then( function() { doSomething; });
}

function myWS(){
  var ws = null;
  this.open = function() {
    ws = new WebSocket(....);
    ws.open = function() { ... };
    ws.onmessage = function () { ... };
  }
  this.sendCmdA = function () {
    ws.send("ABCD");
  }
}

Или лучше передать функцию (-и) обратного вызова при вызове, например

myWS.sendCmdA( fnOk, fnErr);

?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...