Socket.io : Get Client-sessionID an jedem Punkt

Ich weiß, so rufen Sie die client-sessionID, wenn der Benutzer eine Verbindung herstellt.

Aber ich möchte, um es zurückzuholen, zu jeder Zeit, zum Beispiel, wenn der Kunde klickt auf etwas, ich möchte in der Lage sein zu wissen, wer geklickt, was Ihre sessionID war.

socket.sessionID funktioniert nicht, auch nicht socket.handshake.sessionID

Beispiel :

Habe ich diese express-Strecke :

.get('/result/:survey', function(req, res) {
    res.redirect('/result/'+req.params.survey+'/1');
})

Kurz vor der Umleitung, ich würde gerne die Benutzer-join-a-Buchse Zimmer, und auch Ihre sessionID. Wie könnte ich eventuell tun ? Laut dem doc, es wäre socket.join('room') aber ich bezweifle socketstellt nur die Verbindung habe ich mit dem client, und nicht mit den anderen clients. Vielleicht bin ich auch nur mit Mühe zu verstehen buchsen !

  • Sobald Sie eine Umleitung zu einem anderen URL, die socket-Verbindung verloren (Sie sind nicht persistent über die Seite geladen ist) und Ihrem Kunden haben, um re-connect (und eine neue socket-id).
  • Ooooh okay. Aber Ihre handshake.sessionID sollte die gleiche bleiben, richtig ?
  • Klingt wie Sie verwenden sollten, die ein cookie zum speichern der clientId so ist es immer einmalig pro Kunde
  • handshake.sessionID ist nicht Teil der socket.io Protokoll, sondern ist in der Regel festgelegt, innerhalb io.set('authorization', ...) durch analysieren von session-cookies. Wenn es das ist, was Sie verwenden, sollte es bleiben die gleichen, ja.
InformationsquelleAutor Romain Braun | 2013-11-07
Schreibe einen Kommentar