【发布时间】:2019-12-03 23:32:29
【问题描述】:
我使用 socket.io 设置 websocket,但我无法成功连接。
在服务器部分,我看到了 get 调用。但在客户端,我得到了 404 GET http://localhost:6543/socket.io/?uuid=258c4ab9-b263-47ca-ab64-83fe99ea03d4&transport=polling&t=MxE5ufA net::ERR_CONNECTION_REFUSED
和连接
server - 带有快速服务器的打字稿 app.ts
const app = inversify.get<any>(EXPRESS_SYMBOL);
const cors = require('cors');
app.use(cors());
const http = require('http').createServer(app);
const io = require('socket.io')(http);
io.on('connect', (socket: any) => {
console.log('Connected client');
....
});
客户端 - 角度 套接字服务
export class SocketService {
private socket;
public initSocket(uuid: string): void {
this.socket =
socketIo(ENDPOINT, {
query: `uuid=${uuid}`
});
}
【问题讨论】:
-
你的服务器环境是什么?本地电脑?托管服务器?如果是托管环境,可能需要正确配置以允许 webSocket/socket.io 连接。
-
还有,愚蠢的问题,您是否使用
http.listen(portNumber)启动您的服务器?客户端和服务器是否都使用相同的端口?您的 Express 服务器是否适用于常规 http 请求?
标签: node.js angular typescript websocket socket.io