我是socket IO的新手,上个月我一直在使用它,但随着时间的推移,我注意到,如果我让我的网站在很短的一段时间内不做任何事情(我不确定有多少),但它似乎超时了,除非我重新加载页面,否则不会调用事件。一定有办法解决这个问题吗?
我的服务器代码:
var io = require('socket.io').listen(4000);
var users = {};
io.disable('heartbeats');
////////////////USER CONNECTED
io.sockets.on('connection', function (socket) {
socket.emit('connected');
socket.on('session', function (session) {
///all my other functions here
});
});
然后包括在我的页面上是:
<script>var socket = io.connect("http://<?php print $_SERVER["SERVER_NAME"]?>",
{port: 4000, 'reconnect': true,'reconnection delay': 1500});</script>
<script type="text/javascript" src="js/ws/data/data.js"></script>
data.js是我的所有socket io函数面向用户端的地方。
尝试删除此行:
io.disable('heartbeats');
请参阅配置Socket.IO.