socket.io: client-side emittieren callback wird nie ausgelöst

Herumspielen mit sockel.io-nur für proof-of-concept, alles funktioniert soweit Super, außer das ich nicht an meine emittieren callback arbeiten auf der client-Seite. Ich habe zu fehlen etwas doof hier, aber Dokumentation ist kein killer, zumindest im moment. Der server nimmt die "getSomeData" - event ganz gut, keine Fehler, überall.

Was ich sagen könnte in der client-socket.io-Quelle, es wird überprüft ob das Letzte argument zu emittieren, ist eine Funktion, die immer und nutzt es als callback, aber das Debuggen mehr als das war problematisch für mich.

Ich habe das Gefühl, zu fehlen einige Kern-Konzept hier..Ist das nicht das, was this.send(..) tun soll? Ich konnte nur 1 Verwendung im Beispiel apps, und keines, bei dem das client-side-code für das Ereignis der emission zur Verfügung Stand.

Update: gerade zu sein klar, ich bin in der Tat absichtlich aussenden des Ereignisses client-Seite. Der Zweck dieser war es zu sehen, wenn sockel.io konnte genutzt werden, damit clients die ziehen die Daten auf Wunsch zusätzlich zu empfangen schiebt.

server:

var io = require('socket.io').listen(80);

io.sockets.on('connection', function (socket) {
    socket.on("getSomeData", function() {
        this.send({data: "some random data"});
    });
});

client: (Konsole.log nie passiert)

<script type="text/javascript" src="http://localhost/socket.io/socket.io.js"></script>
<script type="text/javascript">
  var socket = io.connect('http://localhost');
  socket.emit("getSomeData", function(data) {
      console.log(data);
  });
</script>
InformationsquelleAutor jdc0589 | 2011-07-20
Schreibe einen Kommentar