Sto cercando di determinare come recuperare le informazioni sulla sessione utilizzando un server Delphi REST DataSnap.Delphi XE2 Datasnap Session Management: informazioni sulla sessione dopo il caricamento della pagina
So che, quando sulla stessa pagina client, si ha accesso alla sessione thread corrente utilizzando il metodo TDSSession GetThreadSession.
Quello che voglio fare, tuttavia, è memorizzare i dati nella sessione (putData) ed essere ancora in grado di recuperarli quando l'utente si sposta da page1 a pagina2. Al momento, se l'utente si sposta su una pagina diversa, la sessione viene persa e ne viene creata una nuova, perdendo così i dati nella sessione che avevo precedentemente impostato.
Ho provato a giocare con TDSSessionManager.SetThreadSession (sessionid) - ma non riesco a farlo funzionare.
Ho esaminato il tanto acclamato white paper di Marco Cantu, tuttavia, non fornisce una soluzione a questo problema.
Qualsiasi aiuto che posso ottenere su questo sarebbe fantastico - anche se è solo "hey, questo argomento è trattato nel libro X".
Grazie!
Scuse: sarebbe stata un'informazione utile fornita inizialmente. TDSServerClass ha la sua proprietà LifeCycle attualmente impostata su Session. – ConBran
Penso che questo dovrebbe funzionare fuori dalla scatola se la connessione HTTP 1.1 KeepAlive è in vigore. –
Fuori dalla scatola, le applicazioni REST utilizzano TIdHTTPWebBrokerBridge come server. Per impostazione predefinita, la proprietà KeepAlive è 'false', quindi, seguendo il tuo suggerimento, all'avvio del server, sto impostando la proprietà KeepAlive su 'true', tuttavia il problema persiste purtroppo. – ConBran