Přenešení proměnných na pozadí aplikace
- Miri
- Člen | 117
Ahoj,
řeším problém, který by se mi vyřešil jednoduše, kdybych při ajaxovém požadavku mohl nějakým způsobem přenést na pozadí pole, tak aby nebylo v parametrech. Podobně asi fungují flash message, které přežijí reload (to je dělané přes session?). Rád bych z toho session vynechal, pokud by to šlo.
Děkuji za pomoc
Míra
- Tomáš Kolinger
- Člen | 136
Flash messages jsou uložený v session a pro rozlišení okna se přenášení v GET parametr „_fid“, kde je unikátní hash pro konkrétní skupinu zpráv v session.
Ano, pokud odesíláš POST požadavek, tak změnou action formuláře (či prostě cílovýho odkazu v případě AJAXovýho požadavku), můžeš poslat jakýkoliv GET parametry. Ač nejlepší řešení je URL (bude fungovat krok zpět/vpřed a navíc lze stránku linkovat), pokud to nechceš v URL, protože se to vyloženě váže na sezení uživatele, tak použí session, protože na to přesně to je určené. Pro identifikaci okna můžeš použít GET/POST jako je to u flash messages.
Výhoda session proti GET/POST je jasná, pokud děláš redirect, tak se v případě session nestaráš o nic, maximálně o předání identifikace okna. Pokud máš ale data v GET či POST, tak musíš u každýho requestu všechny data přeskládat a to je u netriviální struktury (jako je například mapa či pole) celkem otrava.
Editoval Tomáš Kolinger (11. 1. 2015 15:09)