客户端和服务器端之间的连接不在socket.io上工作

时间:2017-12-31 12:09:43

标签: node.js express socket.io

我在客户端和服务器端之间的套接字连接有问题。

我在服务器端有这个代码: -

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

io.on('connection', function(socket) {
  console.log('a user connected');

  socket.on('disconnect', function(){
    console.log('user disconnected');
  });
});

http.listen(3000, function(){
  console.log('listening on *:3000');
});

和客户端的代码: -

<html>
<body>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.1/socket.io.js"></script>
    <script>
        var socket = io();
    </script>
</body>
</html>

服务器端的代码正在运行,但在客户端我有这些错误: - enter image description here

任何人都可以帮我解决问题吗? 非常感谢:(

2 个答案:

答案 0 :(得分:0)

看起来你正在直接打开浏览器文件。实际上你没有指定服务你的HTML的路径。所以socketio可以POST并在那里轮询数据。

app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); });

如果你真的需要直接打开文件到浏览器而不是通过同一端口上的nodejs服务,你必须在客户端套接字中指定主机和端口。

而不是简单地使用寻找本地端口的io(),您可以使用此

var socket = io("http://localhost:3000");

答案 1 :(得分:0)

所以这里有什么对我有用

echo $PATH

希望它能帮到你