Javascript websocket сообщения обрезаются - PullRequest
0 голосов
/ 06 июня 2018

Я использую javascript websocket для отправки сообщений на сервер переменного тока с использованием библиотеки NoPoll Websocket.

Когда я отправляю сообщения длиннее 2920 символов, мое сообщение обрезается, и я получаю 2 разных пакета на сервере.

Самое неприятное, что мой второй пакет длиннее 2920 символов.Например:

socket.send(8000charsMessage) ----> packet1 : 2920 chars + packet2 : 5080 chars
socket.send(12000charsMessage) ----> packet1 : 2920 chars + packet2 : 9080 chars

Я проверил это на другом сокет-сервере, и у меня было точно такое же поведение, поэтому, похоже, проблема в моей реализации JavaScript.

Вот так я запускаю websocket:

this.http.get(app_url)
      .subscribe(res => {

        if (res['status'] !== 'OK')
          reject(res);

        if (WebSocket) {
          this._socket = new WebSocket(socket_url);
          if (this._socket === null) {
            reject(res);
          }
        [...]
        }
    }

И вот как я отправляю пакеты:

this.socket.send(JSON.stringify(packet));

Как я могу решить эту проблему?

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