Node.js + Socket.io Speichern von Daten in Sockets

8

Ich baue gerade eine Anwendung mit node.js und benutze das Modul socket.io. Wenn ein Benutzer eine Verbindung herstellt, speichere ich Daten, die für den Benutzer spezifisch sind, mit seinem Socket. Zum Beispiel

%Vor%

Während das funktioniert, ist meine Frage, ist dies ein guter Weg, es zu tun. Ich speichere effektiv Sitzungsdaten, aber gibt es einen besseren Weg dazu?

    
Pattle 19.08.2013, 09:49
quelle

2 Antworten

2

Ich denke, dass Sie diese Variablen in einem anderen Objekttyp speichern sollten. Behalte das Socket-Objekt nur für die Kommunikation. Sie können für jeden Benutzer eine eindeutige ID generieren und eine Karte erstellen. Etwas wie das:

%Vor%     
Krasimir 19.08.2013, 09:58
quelle
1

Update: io.set() und io.get() Methoden sind veraltet

Ein vernünftiger Weg besteht darin, einen Datenspeicher auszuwählen und jede Daten mit einer eindeutigen Socket-ID (z. B. ID) zu verknüpfen.

Eine empfohlene Methode besteht darin, die native socket.set und socket.get zu verwenden, um Daten asynchron speziell für den aktuellen Socket festzulegen und abzurufen.

Folgen Sie Ihrem Beispiel:

%Vor%

Sie können eine Funktion auch asynchron aufrufen, nachdem Sie einen Wert festgelegt haben:

%Vor%

Schließlich können Sie eine Variable abrufen:

%Vor%

Oder verwenden Sie es direkt bei Bedarf:

%Vor%     
Paulo Coghi 01.06.2015 18:05
quelle

Tags und Links