Почему socket.io теряет соединение?

Всем добрый День. На данный момент занимаюсь разработкой VK MINI APPS приложения. Использую технологии React, node.js и socket.io (в связке с socket.io-client, оба имеют 4.2.0 версию). Столкнулся со следующей проблемой: по нажатию кнопки срабатывает переход по ссылке

window.open("https://vk.com/id"+user_id, "_blank")

Код на клиенте:

import io from 'socket.io-client'
const socket = io('LINK', {
  transports: ['websocket', 'polling']
})

Код на сервере:

import { Server as Socket } from 'socket.io'
const io = new Socket(http, {
  cors: {
    origin: "*",
    methods: ["GET", "POST"]
  }
})

Но как только открывается ссылка, клиент теряет соединение с сервером. На сервер приходит событие "disconnect" по причине "transport close", а на клиент чуть позже приходит событие "disconnect" по причине "ping timeout".

Еще хочу уточнить, что проблема не проявляется при выходе из приложения (допустим при переходе по уведомлению на смартфоне), после возвращения в приложение все функционирует, как и должно.

Все работает прекрасно, за исключением того, что теряется подключение. В предыдущих моих проектах с данной проблемой не сталкивался. С чем может быть проблема?


Ответы (1 шт):

Автор решения: Семен Федотов

Не нашел иного решения, как вернуться к старой версии socket.io, которую подглядел у одного из прошлых проектов. Установил версию 2.3.0.

→ Ссылка