4D v16

4D Mobile Sessions verwalten

Home

 
4D v16
4D Mobile Sessions verwalten

4D Mobile Sessions verwalten    


 

Ab 4D v15 R4 können Sie per Programmierung auf die ID einer 4D Mobile Session auf der 4D Server Seite zugreifen. Über dieses Feature können Entwickler Informationen zu Sessions lokal erhalten und setzen (siehe Beispiel unten).

4D Mobile Sessions werden über reguläre 4D Befehle für Web Sessions verwaltet. Einige 4D Web Befehle, die Funktion WEB Get session process count und die Datenbankmethode On Web Close Process unterstützen 4D Mobile Sessions.

4D Mobile Sessions und Web Sessions sind zwei unterschiedliche Sitzungsarten. Obwohl sie einige Konzepte und Befehle gemeinsam nutzen, haben sie nicht die gleichen Eigenschaften. Der Hauptunterschied ist die Relation zwischen einer Session, einem Prozess und einem Prozesskontext:

  • Eine Web Session ist mit einem einzelnen Web Prozess verknüpft; über das Feature zur automatischen Session-Verwaltung lässt sich der Prozesskontext (Variableninstanzen, Auswahlen, etc.) der Session wiederverwenden.
  • Eine 4D Mobile Session kann mit mehreren Web Prozessen verknüpft sein; jeder Prozesskontext wird nach Ausführen der Prozessmethode automatisch zurückgesetzt.

Für die gemeinsame Nutzung von Informationen zwischen 4D Mobile Web Prozessen innerhalb einer Session sind spezifische Implementierungen auf 4D Server erforderlich. 

Folgende Befehle zum Verwalten von Web Sessions unterstützen 4D Mobile Sessions.

Der Befehl WEB CLOSE SESSION schließt die 4D Mobile Session mit der ID SessionID. Da eine 4D Mobile Session mehrere Prozesse verwalten kann, fragt dieser Befehl alle zugeordneten Web Prozesse ab, um ihre Ausführung zu beenden.

Die Funktion WEB Get Current Session ID gibt die UUID zurück, die der aktuellen 4D Mobile Session zugewiesen ist.

Der Befehl WEB GET SESSION EXPIRATION gibt Informationen zum Ablaufen des Cookie für eine 4D Mobile Session zurück.

Für alle Prozesse innerhalb einer 4D Mobile Session wird dasselbe Cookie verwendet.

Über die Funktion WEB Get session process count können Sie die Anzahl der vorhandenen Prozesse für eine bestimmte Sitzung erhalten.

  • Für reguläre Web Sessions gibt die Funktion immer 1 zurück (eine Web Session = ein Prozess)
  • Für 4D Mobile Sessions gibt die Funktion alle dazugehörigen Web Prozesse zurück. Das ist z.B. hilfreich, um eine Schleife auf alle Prozesse einer 4D Mobile Session auszuführen

4D ruft die Datenbankmethode On Web Close Process jedes Mal auf, wenn ein Web Prozess gerade seine Ausführung beendet. Sie unterstützt vollständig Prozesse der 4D Mobile Session: In diesem Kontext wird sie für jeden geschlossenen Web Prozess aufgerufen, so dass sie alle vom jeweiligen Prozess der 4D Mobile Session erzeugten Daten sichern können, wie z.B. eine Variable, eine Auswahl, etc.

Hinweis: Für reguläre Web Sessions wird die Datenbankmethode On Web Close Process jedes Mal in der Web Session aufgerufen, z.B. wenn der einmalige Prozess in der Web Session geschlossen wird.

Wollen Sie die Information zwischen mehreren Prozessen einer einzelnen 4D Mobile Session gemeinsam nutzen oder wiederverwenden, können Sie über die UUID der 4D Mobile Session die Daten dieser Session identifizieren. Sie wollen z.B. nach einer Suche von Datensätzen auf dem 4D Server eine temporäre Auswahl beibehalten, so dass nachfolgende Anfragen über REST in der gleichen Session direkt auf diese Auswahl zugreifen können. Dafür schreiben Sie nach der Suchanweisung folgenden Code:

  //Eine Interprozess Auswahl mit Session UUID erstellen
 COPY NAMED SELECTION([Emp];"<>EmpSel"+WEB Get Current Session ID)
 
  //Sie können diese Auswahl aus der gleichen Session später wiederverwenden
 USE NAMED SELECTION([Emp];"<>EmpSel"+WEB Get Current Session ID)

 
 



Siehe auch 


 
EIGENSCHAFTEN 

Produkt: 4D
Thema: 4D Mobile Sessions verwalten

 
GESCHICHTE 

Erstellt: 4D v15 R4

 
ARTIKELVERWENDUNG

4D Mobile ( 4D v16)