Socket.io: 1.0.0 Ersatz für socket.set() und socket.get()

Erstellt am 1. Apr. 2014  ·  4Kommentare  ·  Quelle: socketio/socket.io

Früher konnten Sie mit socket.get(key, callback) und socket.set(key, value, callback) beliebige Daten zusammen mit einem Socket speichern. Wie können wir das in 1.0.0 tun?

Nur zufällige Werte an der Buchse zu setzen scheint zu funktionieren, klingt aber nicht sicher. zB socket.foo = 'bar' .

Hilfreichster Kommentar

Irgendeine Auflösung oder Best Practice zum Ersetzen der alten .set() und .get() -> sollten wir stattdessen eine Requisite direkt auf dem Client-Objekt verwenden? Gibt es ein Modul (wie oben erwähnt), das dies eleganter macht?

Alle 4 Kommentare

Es sollte auf jeden Fall sicher sein, Eigenschaften auf dem Objekt zu speichern. Der Grund, warum ich es entferne, ist, dass ich keine Persistenz auf der socket.io-Ebene möchte. Das können wir in anderen Modulen einbauen.

Ich füge jedoch definitiv ein Polyfill als Teil des Migrationsleitfadens hinzu.

@guille Ist es auch in 0.9.x fertig? Um Code für 1.0 vorzubereiten und diese Get- und Set-Aufrufe loszuwerden, die unnötige Rückrufverschachtelungen hinzufügen? Oder kann das als socket Objekt die Identität ändern, während die gleiche ID, Clientverbindung und Attribute beibehalten werden?

Ich sehe im Migrationsleitfaden kein Polyfill. Wie wird das in 1.0 genau gemacht?

Ich verwende das jetzt als Middleware:

configurable = require 'configurable'
module.exports = (socket, next) ->
    configurable socket
    next()

Irgendeine Auflösung oder Best Practice zum Ersetzen der alten .set() und .get() -> sollten wir stattdessen eine Requisite direkt auf dem Client-Objekt verwenden? Gibt es ein Modul (wie oben erwähnt), das dies eleganter macht?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen