Путь Socket.io на стороне сервера (Node.js) и на стороне клиента (угловой) - PullRequest
0 голосов
/ 26 октября 2018

У меня есть socket.io, работающий локально.http://localhost:3000 - это URL для внутреннего интерфейса Node.js и http://localhost:4200 URL для внешнего интерфейса Angular.

Но он не работает при развертывании приложения.

Структура папки:

имя-родительской папки

 -backend folder

 -frontend files

Все файлы Angular, расположенные непосредственно в родительской папке.

URL-адреса:

http://mydomainnameexample.com/parent-folder-name/backend http://mydomainnameexample.com/parent-folder-name/ (внешний интерфейс)

Код:

Клиент: this.socket = io('http://mydomainnameexample.com/parent-folder-name/');

Сторона сервера:

const http = require('http').Server(app);
const io = require('socket.io')(http);
io.sockets.on('connection', function(socket) {
  console.log('A client is connected!');

  socket.on('index', () => {
    console.log('socketData: ');
    testController.index(socket);
  });
});

У меня есть 404 вконсоль для этого URL: http://mydomainnameexample.com/parent-folder-name/backend/?EIO=3&transport=polling&t=MQnDIEb

1 Ответ

0 голосов
/ 26 октября 2018

на стороне сервера (Node.js) Я добавил путь:

const io = require('socket.io')(http, {path: 'parent-folder-name/backend/socket.io'})`

И на стороне клиента:

this.socket = io('http://mydomainnameexample.com', { path: 'parent-folder-name/backend/socket.io' });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...