【发布时间】:2021-04-27 11:19:38
【问题描述】:
我制作了一个简单的 Web 应用程序,它包含一个 nodejs 调度程序后端和一个使用 socket.io 连接的 quasar spa 前端。 我知道如何配置客户端连接到本地主机,但如果我尝试在网络上的另一台设备上打开相同的前端,逻辑上无法连接。 考虑到我将在 docker 容器上同时托管服务器和客户端,我如何将 socket.io 配置为可在 localhost 之外访问?
后端:
const app = require('express')();
const http = require('http')
.createServer(app)
.listen(config.socketPort, config.socketIP, function() { // Being: 0.0.0.0:3002
console.log(
`socket: websocket listening on ${config.socketIP}:${config.socketPort}`
);
const io = require('socket.io')(http, {
cors: {
origin: '*'
},
});
...
前端:
import io from 'socket.io-client'
const socket = io.connect('http://localhost:3002')
export default ({ Vue }) => {
Vue.prototype.$socket = socket
}
export { socket }
【问题讨论】:
标签: node.js express sockets socket.io quasar-framework