Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi [IntraWeb] Session schließen (https://www.delphipraxis.net/156599-%5Bintraweb%5D-session-schliessen.html)

pustekuchen 8. Dez 2010 13:28

[IntraWeb] Session schließen
 
Guten Tag,

Ich habe mir eine kleine Seite mit IntraWeb erstellt.
Wenn ich diese Seite aufrufe, wird eine neue Session erstellt. Rufe ich die Seite erneut auf wird eine weitere Session erstellt und die alte bleibt bestehen.
Das Problem bei der ganzen Sache ist das max. 5 Aktive Sessions offen sein dürfen, da es durch IntraWeb eingeschränkt ist.
Für meine Zwecke reichen 5 gleichzeitige Session locker aus.

Da ich heute erst angefangen habe mit IntraWeb zu arbeiten, kenn ich mich dementsprechend aus ;)

Nun ist die Frage wie ich es schaffe die Sessions zu schließen, wenn sie nicht mehr benötigt werden.
z.B. durch öffnen einer anderen Webseite, schließen des Browsers, etc.

Danke schomal für eure Antworten ;)

Gruß
pustekuchen

ThomasBab 8. Dez 2010 13:44

AW: [IntraWeb] Session schließen
 
Zitat:

Zitat von pustekuchen (Beitrag 1067085)
Guten Tag,

Ich habe mir eine kleine Seite mit IntraWeb erstellt.
Wenn ich diese Seite aufrufe, wird eine neue Session erstellt. Rufe ich die Seite erneut auf wird eine weitere Session erstellt und die alte bleibt bestehen.
Das Problem bei der ganzen Sache ist das max. 5 Aktive Sessions offen sein dürfen, da es durch IntraWeb eingeschränkt ist.
Für meine Zwecke reichen 5 gleichzeitige Session locker aus.


Hallo!

1. Wieso nur fünf aktive Sessions?
Ich habe es gerade bei meiner Anwendung probiert: 15 Sessions ohne Probleme, aber ich hatte auch schon mehr gleichzeitige Sessions.

2. Du kannst für jede Session ein Session-Timeout angeben. Dann wird diese Session nach der entsprechenden Zeit, nach der keine Aktion vom Client kommt, geschlossen.

Gruß
thomas

pustekuchen 8. Dez 2010 13:56

AW: [IntraWeb] Session schließen
 
Zitat:

Zitat von ThomasBab (Beitrag 1067086)
1. Wieso nur fünf aktive Sessions?

Da ich nicht die Architect Version habe, sondern nur die Professional Edition die bei Delphi 2010 dabei ist.
Zitat:

Zitat von ThomasBab (Beitrag 1067086)
2. Du kannst für jede Session ein Session-Timeout angeben. Dann wird diese Session nach der entsprechenden Zeit, nach der keine Aktion vom Client kommt, geschlossen.

Danke, hab den Timeout von 10 auf 1 min gestellt. Das sollte klappen, wenn die User nicht einfach ein paar mal hintereinander auf die Page gehen.

Gibt es evnt trotzdem eine möglichkeit eine Session zu schließen, wenn die Seite verlassen wird?
z.B indem man die IP's der Sessions vergleicht oder andere Daten die in einer Session gepspeichert sind?

ThomasBab 8. Dez 2010 14:14

AW: [IntraWeb] Session schließen
 
Zitat:

Zitat von pustekuchen (Beitrag 1067087)
Danke, hab den Timeout von 10 auf 1 min gestellt. Das sollte klappen, wenn die User nicht einfach ein paar mal hintereinander auf die Page gehen.

Gibt es evnt trotzdem eine möglichkeit eine Session zu schließen, wenn die Seite verlassen wird?
z.B indem man die IP's der Sessions vergleicht oder andere Daten die in einer Session gepspeichert sind?

Hallo!

Ok, das mit der Anzahl der Sessions ist ja geklärt.

Aber wie soll der Server feststellen, ob die Session zuende ist?
Die einzige Möglichkeit wäre, daß Du z.B. eine Möglichkeit bietest, daß sich der Benutzer explizit abmeldet.

In der Praxis (ich gehe jetzt mal von meiner Anwendung aus: www.sparflugplan.com ) scheint mir die timeout-Zeit von einer Minute allerdings sehr kurz.

Gruß
Thomas

pustekuchen 8. Dez 2010 14:21

AW: [IntraWeb] Session schließen
 
Zitat:

Zitat von ThomasBab (Beitrag 1067093)
Die einzige Möglichkeit wäre, daß Du z.B. eine Möglichkeit bietest, daß sich der Benutzer explizit abmeldet.

Wie würde das dann aussehen? Könntest du ein Stück Beispielcode posten? Oder die zuständigen Methoden?

ThomasBab 8. Dez 2010 14:27

AW: [IntraWeb] Session schließen
 
Zitat:

Zitat von pustekuchen (Beitrag 1067097)
Zitat:

Zitat von ThomasBab (Beitrag 1067093)
Die einzige Möglichkeit wäre, daß Du z.B. eine Möglichkeit bietest, daß sich der Benutzer explizit abmeldet.

Wie würde das dann aussehen? Könntest du ein Stück Beispielcode posten? Oder die zuständigen Methoden?


Ich habe gerade mal kurz nachgeschaut:

WebApplication.Terminate;

sollte das gewünschte machen.

Gruß
Thomas

pustekuchen 8. Dez 2010 15:18

AW: [IntraWeb] Session schließen
 
Gut, danke
Delphi-Quellcode:
WebApplication.Terminate('Bye!');
Klappt wunderbar ;)

Hab gesehen das es auch
Delphi-Quellcode:
WebApplication.TerminateAndRedirect(string AURL);
gibt.

Sehr Interessant ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz