2010-11-30 4 views
0

Ich habe ein Applet von einer ColdFusion/ASP.NET-Website bedient. Jedes Mal, wenn der Benutzer mit dem Applet interagiert, fordere ich eine kleine ASP.Net-Seite (.aspx-Datei) an. Ich bekomme es gut (die verarbeitete HTML, nicht die RAW-ASPX). Ich dachte, das wäre alles, was ich tun musste, um die ASP.NET-Sitzung am Leben zu erhalten, aber es funktioniert nicht. Die Sitzung stirbt, als ob nichts davon vorgefallen wäre.Applet und Sitzung Zeitüberschreitung auf ASP.NET

Ich habe Zugriff auf die Session-ID und ich schließe sie als Cookie in die Anfrage ein. Ich weiß, dass es korrekt ist, da das Applet auch Dienste auf dem Server verwendet und diese Dienste das richtige Sitzungsobjekt erhalten.

Ich habe keine anderen Anfrage Eigenschaften (andere als Cookies) in der Anfrage für die Webseite. Sollte ich hinzufügen, vielleicht Referrer? oder Verbindung? (was ich dachte, war nur TCP/IP bezogen). Oder sollte ich etwas anderes tun?

+0

Rufen Sie irgendetwas von Sitzung in Ihrer ASPX-Seite auf? Wenn nicht, wird das Sitzungszeitlimit nicht zurückgesetzt. – bechbd

Antwort

0

Hier ist mein derzeitiges Verständnis: Erstens war das Problem nicht die Sitzung Zeitüberschreitung. Es war die Autorisierungszeit. Der Berechtigungscookie ist eine Verschlüsselung eines "Forms Authorization Ticket". Das Ticket enthält die Ablaufzeit. Keine Kopie des Tickets ist auf dem Server gespeichert. Wenn das Ticket "ungefähr" ausläuft (mehr als die Hälfte des Zeitlimits), wird ein neues Ticket ausgestellt und eine verschlüsselte Version als Antwort-Cookie gesendet. Ich habe nicht nach diesem Keks gesucht.

Zumindest ist das, was ich denke, passiert.