timeout

Xb2.Net von Boris Borzic

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

timeout

Beitrag von Manfred »

Ich habe folgendes Problem. Der Anwender von Tablets oder Smartphones meldet sich nicht immer vom System ab, sondern schließt einfach den Browser, oder "schiebt" den Browser in den Hintergrund, ohne zu merken, daß das Teil weiter läuft. Wie sage ich dem Webserver (xb2.net) das er nach einer Zeit x die Verbindung von sich aus beendet und dann dem User, wenn er an der alten Stelle weitermachen will, wieder den Login Bildschirm vor gibt? Wenn man sich nicht ausloggt und den Vorgang somit beendet, kann man später an jeder möglichen Stelle wieder einsteigen und weitermachen. Das kann doch so nicht sein. Anders gesagt, das möchte ich verhindern. irgendwann muß doch der Webserver sagen, Ende Feierabend, da passierte mir zu lange nichts mehr, Du bist raus.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: timeout

Beitrag von brandelh »

du kannst zu jedem User oder auf der Seite selbst die Zeit (seconds) eintragen (hidden) die noch akzeptabel ist und danach umlenken auf die timeout seite.
Ob XB2 sowas mit der session var automatisch machen kann weiß ich nicht, ich nutzte ja CGI EXE.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: timeout

Beitrag von AUGE_OHR »

hi,

du hast doch sicherlich eine Eventloop :?:

Code: Alles auswählen

   nEvent := APPEVENT( @mp1, @mp2, @oXbp, nTimeOut )
wenn "nichts" passiert wird der 4th Parameter, nach Ablauf von nTimeOut, aktiv
gruss by OHR
Jimmy
ramses
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2513
Registriert: Mi, 28. Jul 2010 17:16
Hat sich bedankt: 12 Mal
Danksagung erhalten: 77 Mal

Re: timeout

Beitrag von ramses »

Hallo Manfred

um die eigentliche TCP-Verbindung musst du dich nicht kümmeren, die schliesst sich automatisch nach einigen Sekunden.
Ich habe zu dem Zweck einen "Sessions-Manager" der die Sitzungen verwaltet und jeder HTML Seite eine Session-ID mit gibt und die auch immer vor jeder Aktion geprüft wird. Alle Session-ID werden generell nach einiger Zeit auf dem Server gelöscht wenn Sie nicht mehr aktiv sind bei der nächsten Aktion erscheint dann die Loginseite.

Auf dem Client kannst du mit einer JavaScript eine Funktion bauen die, wenn der Browser nicht mehr aktiv ist sondern im Hintergrund gelegen hat, automatsich deine Login-Seite aufruft. Dazu kannst du z.B. mit setTimeout() eine Funktion bauen die sich immer erneut Aufruft und prüft wieviel zeit seit dem letzten Ausführen vergangen ist. Ist die Zeit zu lang ----> Login aufrufen

Ich hoffe du kannst dir mit dieser kurzbeschriebung etwas vorstellen.

Gruss Carlo
Valar Morghulis

Gruss Carlo
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: timeout

Beitrag von Tom »

Jimmy, es geht hier um Xb2.Net-Anwendungen und nicht um simples In-App-Eventhandling. Die Session-Handles werden nach einer gewissen Zeit ungültig, Manfred. Schau Dir einfach an, was das Timeclock-Beispiel macht. Da§ kannst Du auch selbst steuern.
Herzlich,
Tom
Antworten