我在客户端和服务器端之间的套接字连接有问题。
我在服务器端有这个代码: -
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>
任何人都可以帮我解决问题吗? 非常感谢:(
答案 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
希望它能帮到你