Socket.io Sitzung ohne express.js?

8

Ich möchte eine Session-Behandlung über Websockets über node.js und socket.io machen, ohne unbedingt Cookies zu verwenden und express.js zu vermeiden, weil das so sein sollte Clients, die nicht in einer Browserumgebung ausgeführt werden. Hat jemand das schon gemacht oder Erfahrungen mit einem Proof of Concept gesammelt?

    
Felix Gertz 25.08.2012, 14:22
quelle

2 Antworten

3

Bevor die socket.io-Verbindung hergestellt wird, gibt es einen Handshake-Mechanismus. Standardmäßig werden alle ordnungsgemäß eingehenden Anfragen erfolgreich geschüttelt. Es gibt jedoch eine Methode, um Socket-Daten während des Handshakes zu erhalten und je nach Ihrer Wahl true oder false zurückzugeben, die die eingehende Verbindungsanfrage akzeptiert oder ablehnt. Hier ist ein Beispiel aus socket.io docs:

  

Da die handshakeData nach der Autorisierung gespeichert wird, können Sie Daten zu diesem Objekt hinzufügen oder entfernen.

%Vor%

Das erste Argument der Callback -Funktion ist ein Fehler. Sie können hier eine Zeichenfolge angeben, die den Client automatisch zurückweist, wenn er nicht auf null gesetzt ist. Das zweite Argument ist boolesch, ob Sie die eingehende Anfrage akzeptieren wollen oder nicht.

    
1.44mb 04.12.2012 10:23
quelle
1

Dies sollte hilfreich sein, Ссылка

Sie können alle Sitzungsvariablen im Auge behalten und Benutzer anhand einer Kombination der folgenden verfügbaren handshakeData

eindeutig identifizieren %Vor%

Dieses Beispiel kann ebenfalls hilfreich sein, wenn Ihre Nicht-Browser-Clients die Informationen auf andere Weise bereitstellen:

SocketIO + MySQL-Authentifizierung

    
Hortinstein 26.08.2012 06:25
quelle