[英]Socket.io path on server side (Node.js) and client side (Angular)
I have socket.io working locally. 我有socket.io在本地工作。
http://localhost:3000
is URL for Node.js backend and http://localhost:4200
URL for frontend Angular. http://localhost:3000
是Node.js后端的URL,而http://localhost:4200
是前端Angular的URL。
But it does not work when I deploy the app. 但是当我部署应用程序时它不起作用。
Folder structure: 资料夹结构:
parent-folder-name 父文件夹名称
-backend folder
-frontend files
All files of Angular located directly in the parent folder. Angular的所有文件都直接位于父文件夹中。
URLs: 网址:
http://mydomainnameexample.com/parent-folder-name/backend
http://mydomainnameexample.com/parent-folder-name/
(frontend) http://mydomainnameexample.com/parent-folder-name/backend
http://mydomainnameexample.com/parent-folder-name/
(前端)
Code: 码:
Client: this.socket = io('http://mydomainnameexample.com/parent-folder-name/');
客户端:
this.socket = io('http://mydomainnameexample.com/parent-folder-name/');
Server side: 服务器端:
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);
});
});
I do have 404
in the console for this URL: http://mydomainnameexample.com/parent-folder-name/backend/?EIO=3&transport=polling&t=MQnDIEb
我的控制台中确实有此URL的
404
: http://mydomainnameexample.com/parent-folder-name/backend/?EIO=3&transport=polling&t=MQnDIEb
: http://mydomainnameexample.com/parent-folder-name/backend/?EIO=3&transport=polling&t=MQnDIEb
on the server side (Node.js) I added the path: 在服务器端(Node.js),我添加了路径:
const io = require('socket.io')(http, {path: 'parent-folder-name/backend/socket.io'})`
And Client side: 和客户端:
this.socket = io('http://mydomainnameexample.com', { path: 'parent-folder-name/backend/socket.io' });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.