Сбой подключения WebSocket к «wss://url/socket.io/?EIO=4 и транспорт=websocket»:

#node.js #websocket #socket.io

Вопрос:

Я продолжаю получать эту ошибку :подключение WebSocket к «wss://url/socket.io/?EIO=4 и транспорт=websocket» не удалось: в течение одной недели в производстве не локально. Вот мои узлы подключения к websocket в server.js файл:

 `server.js :
const http = require('http');
const socketIO = require('socket.io');
const server = http.createServer(app);  
const io = socketIO(server);
//const io = require('socket.io').listen(8080).sockets;
app.set('io', io);`
 

Вот мое подключение к websocket в Angular:

 `environment.prod.ts :
export const environment = {
  production: true,
  basUrl :  "https://okbaclinical-backend.herokuapp.com/api/",
  socketBaseUrl : "wss://okbaclinical-backend.herokuapp.com"
};
`

`
notifications.ts :
//imports : 
import { io } from 'socket.io-client';
import { environment } from 'src/environments/environment.prod';
//declarations : 
  private websocket = environment.socketBaseUrl;
  socket;
//code : 
    this.socket = io(this.websocket, {transports: ['websocket']});
    this.socket.on('notification', (res) => {
      this.getNotification();
      });
`
 

Я попытался обновить и понизить рейтинг, используя следующие версии: 1.7.0, 2.4.0, 3.1.1

Ответ №1:

wss означает, что вы используете ssl, поэтому вам следует запросить https и предоставить сертификаты

Ответ №2:

Прокси-сервер, передающий ваши запросы на веб-сокеты, может помочь.

Комментарии:

1. Я новичок в веб-разработке, подскажите, пожалуйста, как создать прокси и использовать его в этом случае? (ps: я использую angular и nodejsfront и обратно последовательно)