Session State vor Branch speichern
- Peter Raganitsch
- Kategorie: Oracle APEX, Oracle APEX, Tipps & Tricks | Tags: Branch, Security, Version 3.2
Es sind die kleinen Dinge, die das Leben schöner und einfacher machen können.
Wie z.B. die Erweiterung in APEX 3.2 im Branch deklarativ einzustellen, dass der Session State der Übergabeparameter festgeschrieben werden soll bevor auf die neue Seite gewechselt wird.

Sie fragen sich, was das jetzt verbessert und wo der Unterschied zu vorher liegt? Dazu am Besten 2 URLs, die so ein Page-Branch erzeugen kann.
Hier das herkömmliche Verhalten:
/apex/f?p=108:1:5935697213742060::NO::P1_PASSWORD:abc
und hier der erzeugte URL mit der aktivierten Save State Option:
/apex/f?p=108:1:5935697213742060::NO::
Parameternamen und -werte werden also nicht mehr in der Adresse übergeben, sondern tatsächlich nur in den Session State geschrieben -> dies passiert in der gleichen Datenbanksession wie das Page Submit, also noch bevor das redirect ausgeführt wird.
Dadurch ist sichergestellt, dass der Benutzer die Werte nicht sieht und nicht manipulieren kann, potentielle Probleme mit URL encoding treten so gar nicht mehr auf.
Viel wichtiger aber ist, dass der zu übergebende Wert garantiert im Session State persistiert ist und im Page Rendering bereits verfügbar ist.
Eine kleine Einstellung, aber eine grosse Hilfe.

