2017-11-23 1 views
0

Kürzlich arbeite ich mit Meteor.js und das Problem entsteht aus meiner Entwicklung ist, wie Persist-Sitzung für Meteor.js zu verwenden.Persist Sitzung in Meteor verwenden

Ich habe mit Meteor Sitzung gearbeitet und es entfernt, wenn ich die Website aktualisieren. Ich erkannte, dass ich etwas für meine Sitzung tun musste.

Ich habe mit Google gearbeitet und alle von ihnen habe ich über die persistente Sitzung herausgefunden, die localStorage verwendet.

Wenn ich localStorage verwenden, sollte meine Sitzung nicht auf IE arbeiten, da IE localStorage nicht unterstützt.

Gibt es einen Vorschlag für mein Problem? Danke für Ihre Aufmerksamkeit.

+0

Lokaler Speicher funktioniert mit IE 11+. https://caniuse.com/#search=local%20storage –

Antwort

1

Sie können ground db verwenden, was Ihnen auch clientseitige Offline-Inhalte ermöglicht und somit Ihre Sitzungsdaten auf Ihren Benutzergeräten persistent macht. Dies ist nützlich, wenn Sie möchten, dass Ihre Clients den Persistenzspeicher verwalten und gleichzeitig komplexe Sätze von Datencaching verwalten können.

Wenn dies Ihren Anforderungen nicht entspricht, können Sie eine Sammlung erstellen, die als Ihre Sitzung fungiert. Der Vorteil ist hier, dass die Persistenz über den Einfluss des Clients auf den Server hinaus erhalten bleibt. Die Hürde ist, dass Sie einen festen Session-Get-Set-Mechanismus mit vielen Methodenaufrufen und Datenaktualisierungen implementieren müssen.

könnte ein Schema für diese Sitzung sein:

{ 
    userId:String, 
    state:{ 
    type:Object, 
    backbox:true, 
    } 
} 

Das blackbox Attribut können Sie die Validierung umgehen und diese Sammlung für die Verwendung als Session-Speicher sehr flexibel. Nachteil ist, dass es einen Sicherheitsfehler verursachen kann, da die eingehenden Daten nicht von collection2-core validiert werden (wenn Sie es verwenden). Sie müssen Ihre Variablen dann selbst validieren.

+0

Danke für Ihre Unterstützung. –

0

Ich würde @ Jankapunkt Ansatz bevorzugen, aber nur um es dort zu veröffentlichen, gibt es this unsupported package, die die Aufgabe der Sitzungsvariablen über Browser aktualisiert.

Beispiel: Session.set (Schlüssel, Wert)