客户端不会使用Socket.io和Node.js实时更新
为什么我的客户端不能使用socket.io和node.js自动更新?
我的后端接受来自PHP的JSON POST请求,然后它将数据发送到所有连接的设备。
我的后端代码
app.post('/', function (req, res) { console.log(req.body); subdata = req.body; res.send('ok'); }); io.sockets.on('connection', function (socket) { socket.broadcast.emit('info', subdata); });
客户端
<script> var socket = io.connect('http://127.0.0.1:3000/'); socket.on('info', function (data) { console.log(data); }); </script>
这是因为你只有一次发出一个新的socket.io连接。 如果app.post
callback被再次调用,没有什么可以从socket.io
发出另一个消息。
你想从你的app.post
callback中发出,并停止使用全局variables。