使用长轮询而不是套接字的套接字IO

时间:2015-11-12 17:47:56

标签: node.js websocket socket.io

我刚刚开始使用Node和Socket IO。我使用的是socket.io v1.3.7。 我可以加载套接字IO客户端,但它是长轮询而不是使用套接字。

我上次使用socketIO时效果很好。我认为这是0.9.x分支。

http://sockettest.dev:3000/socket.io/?EIO=3&transport=polling&t=1447350154198-2&sid=eW7B_kpSat6WfGQSAAAC

这是代码..

服务器 - app.js

var server = require('http').createServer();
var io = require('socket.io')(server);
io.on('connection', function(socket) {
    socket.emit('connection', 'connected');

    socket.on('disconnect', function() {
        socket.emit('disconnection', 'not connected');
    });
});
server.listen(3000);

客户 - index.php

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="//recently.dev:3000/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('<?php echo '//' . $_SERVER['HTTP_HOST'] . ':3000/'; ?>');
socket.on('connection', function(data){
    console.log(data);
});
</script>
</head> 
<body>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

我认为这就是为什么..

Why is my socket.io using long polling instead of the websocket?

我认为较旧的方法是更好的IMO。至少应该有一个选择。