2017-04-12 4 views
8

Und wenn ja, wie unterscheiden sie sich, dass das möglich ist?Kann man Devise verwenden: zeitgesteuert und gleichzeitig abrufbar?

Und wenn nicht, warum existieren beide? Warum nicht eins ohne das andere? Wenn Sie nicht über Timeout verfügen, wird die Sitzung automatisch gespeichert. Wenn Sie nicht: Erinnerbar sind, wird die Sitzung automatisch beendet.

http://rubydoc.info/github/plataformatec/devise/master/Devise/Models/Rememberable

http://rubydoc.info/github/plataformatec/devise/master/Devise/Models/Timeoutable

Antwort

0

Für mein Verständnis/Erfahrung, die nicht viel, ich sehe, dass:

Timeout-Funktionalität für Benutzer mit dem Browser gedacht ist offen, dass möglicherweise weg von Tastatur und Sie möchten, dass die Sitzung innerhalb von Minuten aus Sicherheitsgründen abläuft.

Remember Me-Funktion ist für Benutzer gedacht, die täglich oder wöchentlich zurückkehren und nicht möchten, dass sie jedes Mal durch den Anmeldevorgang gehen. So können Sie sich an sie erinnern (für etwas in der Regel Wochen oder Monate). Was nicht wie erwartet funktioniert, ist, dass sich merke, dass es nur funktioniert, wenn die Browser-App vollständig geschlossen wird (getestet in Firefox), wenn der Benutzer nur die Registerkarte schließt und eine neue Registerkarte öffnet, müssen sie sich nicht erneut anmelden. selbst wenn sie darum baten, nicht in Erinnerung zu bleiben.

Als abschließender Gedanke, ich verstehe, dass bei der Verwendung von Timeout, Erinnerung hat keinen Nutzen.

+0

Ich glaube, die Option, sich an eine Sitzung zu erinnern, wird in 'devise.rb' eingestellt und ist' config.timeout_in', die standardmäßig 30m ist. Selbst wenn sie "Remember Me" nicht auswählen, wird ihre Sitzung für 30 Minuten aktiviert. Wahrscheinlich wird ein Session-Cookie mit einer Ablaufzeit verwendet, die nicht zwischen Neustarts des Browsers gespeichert wird. Session-Cookies werden jedoch zwischen Tabs gespeichert. – Chloe

Verwandte Themen