0

我编写了一个简单的应用程序并在 Chrome 中进行了测试。一切正常!现在我正在使用 qupzilla 进行测试,但是当我触发 .emit 函数时,什么也没有发生!从chrome我写了一个东西,对象被更新并发送到服务器,服务器进行广播。一切都好(qupzilla 也收到更新)。但是,如果我在 qupzilla 上写一些东西,这个更新不会发送到服务器(节点中没有日志)

这是一些代码。

服务器端:

var io = require('socket.io').listen(8080);
io.set("log level", 1);
var dataStored = [];
io.sockets.on('connection', function (socket) {
    socket.emit('event', dataStored);
    socket.on('update', function (data) {
        console.log(data);
        dataStored = data;
        socket.broadcast.emit("event", data);
    });
});

和客户端:

$scope.things = [];
$scope.pushingObj = "";
// socket
var socket = io.connect("http://localhost:8080", {
    'connect timeout': 500,
    reconnect: true,
    'reconnection delay': 500,
    'reopen delay': 500,
    'max reconnection attempts': 10000
});
socket.on("event", function(data) {
    $scope.things = data;
    $scope.$apply();
});
//
$scope.pushObj = function() {
    //console.log($scope.pushingObj);
    $scope.things.push($scope.pushingObj);
    socket.emit("update", $scope.things);
    $scope.pushingObj = "";
}
4

0 回答 0