Zum Inhalt springen

per Servlet Daten einer Session abfragen


Empfohlene Beiträge

Geschrieben

hi

ich möchte anhand eines servlets (welches nur im hintergrund arbeiten soll (also wird aufgerufen wenn eine seite meines web servers aufgerufen wir und dann weiter verlinkt zu der eigentlichen seite)) zb herausfinden wie lange ein user durschnittlich auf meinen seiten verweilt (also wie lange die session dauert)

aber des kann ich doch nicht wirklich herausfinden oder!?!?

also ich weiß doch nur wann der user das letzte mal ein request gemacht hat oder!?!?

und des is ja net so der bringer wenn ich da jetzt zb eine seite mit viel text habe und er daran 20 min liest und dann auf eine andere seite geht hat er ja somit kein request mehr gemacht und mir fehlen somit min 20 min oder!??!

hat jemand von euch einen tipp oder eine idee wie man das herausfinden kann?!?!

vielen dank im voraus

Geschrieben

Hi,

1. Ein Applet, das alle paar Sekunden die Verbindung checkt.

2. Ein Popup das du mit onunload aufrufst. Wobei ich nicht weiss ob man da interne und externe Links unterscheiden kann.

Beides finde ich persönlich störend und würde nicht die Beliebtheit deiner Seite bei mir fördern. ;)

Gruß Jaraz

Geschrieben

Was du vorhast ist technisch eigentlich nicht möglich. Du hast einfach nicht die Möglichkeit zu überprüfen, wie lange der Benutzer auf deinen Seiten bleibt. Das ganze liegt an der Art und Weise wie das HTTP Protokoll arbeitet.

Es wird halt immer nur eine Verbindung zum Webserver aufgebaut, wenn du die aktuelle Seite aufrufst - und wenn die Seite da ist, dann ist halt auch wieder Ende. Sicherlich kannst du per Session überprüfen "Oh ja, der User war schonmal dagewesen" aber du kannst kein definitives Ende bestimmen. Es wäre zwar möglich zu sagen: Okay, wir haben das folgende Verhalten:

21:01 - Benutzer mit der IP 123.123.123.123 hat die Seite index.html abgerufen

21:03 - Benutzer mit der IP 123.123.123.123 hat die Seite content.html abgerufen

Und danach kommt nichts mehr. Das heisst der Benutzer wäre also 2 Minuten auf deiner Seite gewesen. Stop! Aber was ist, wenn der User zwar um 21:03 die Seite aufgerufen hat aber dann online 10 Minuten mit dem Lesen verbracht hat und dann seinen Browser geschlossen hat? Davon hast du nichts mitbekommen, also wäre die Statistik von 2 Minuten total falsch.

Kurz und gut: Solange du HTTP verwendest (und bei Webseiten wirst du kaum etwas anderes können *g*) kannst du nicht herausfinden wie lange ein Benutzer geblieben ist.

Ciao

Christian

Geschrieben
aha des is natürlich eher weniger schön und hat meine befürchtung bestätigt

Naja die Frage ist doch: Was bringt es dir denn eigentlich zu wissen wie lange der Benutzer dagewesen ist?

Ciao

Christian

Geschrieben

naja daran kann ich ja zb erkennen wie beliebt oder wie interessant die seite ist oder

also wenn sich die nutzer 20 -30 min auf ihr aufhalten weiß ich doch das es ihnen gefällt

aber wenn sie schon nach 20 sek weg klicken weiß ich das ich was verändern muss

Geschrieben
naja daran kann ich ja zb erkennen wie beliebt oder wie interessant die seite ist oder

Das ist aber auch keine wirklich gute Qualitätskontrolle. Da kannst du wirklich eher darauf achten, wie oft _überhaupt_ jemand die Seite besucht das sagt nach meinen Erfahrungen deutlich mehr als die Dauer des Besuches.

Ausserdem muss eine kurze Aufenthaltszeit ja auch nicht schlecht sein - im Gegenteil. Es kann durchaus besser sein den Benutzer "nur" fünf Minuten auf seiner Seite zu haben, was nämlich bedeutet "Er kam, sah und fand was er wollte" wogegen 30 Minuten vielleicht bedeuten "Er hat verzweifelt etwas gesucht und nicht gefunden". Also Aufenthaltsdauer == Qualität halte ich für Quatsch.

Zweites Beispiel: Der Benutzer kommt und lädt die Seite im Hintergrund. Wartet 20 Minuten, weil er irgendwas anderes macht (andere Webseite gucken oder was weiss ich), kommt dann wieder auf die Seite zurück und merkt "Ach ne, eigentlich doch Blödsinn". Browser zu, Ergebnis Mist aber trotzdem werden 20 Minuten gezählt.

Ciao

Christian

Geschrieben

hi

na siehste mal so kann man des also auch deuten und auswerten kommt ja immer darauf an (also ob langer oder kurzer aufenthalt besser ist) was der inhalt soner seite ist ne

und deshalb wäre es ja vielleicht auch am besten wenn man diese dauer pro seite nimmt um eine genauere analyse vornehmen zu können was

Geschrieben

könnte man nicht per javascript nen zähler (also ne uhr) mitlaufen lassen, und wenn die seite geschlossen wurde den zählerstand inne datei schreiben (kann man in javascript datein schreiben?), und die datei dann vom servlet auswerten lassen?

Geschrieben

Hi

Glaube mal schon das des geht.

Aber bei mir ist das Problem das die Seiten schon alle vorhanden sind und ich da nicht wirklich was dran ändern kann.

  • 2 Wochen später...
Geschrieben

Ich möchte nur zur Vollständigkeit auf das Interface

javax.servelt.http.HttpSessionListener

hinweisen.

Eine Klasse, die dieses Interface implementiert, besitzt dadurch implizit die

Methode

public void sessionDestroyed(HttpSessionEvent arg0) {

}

Sie wird vom Container aufgerufen, wenn eine Session nicht mehr gülitg ist.

Dies ist dann der Fall, wenn beispielsweise der session timeout bei 0 ist

oder die methode invalidate des HttpSession Objekts aufgerufen wird.

Dem Container muß die die Klasse aber auch im Deployment Deskriptor über den Eintrag

<listener>

<listener-class>MySessionListener</listener-class>

</listener>

bekanntgemacht werden. Die Notwendigen Schlüsse aus dieser Information überlasse ich dem Leser. Es sei dennoch erwähnt dass das eingangs erwähnte Problem nur teilweise gelöst ist.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...