[ruby-it] problemi con session e ajax

Matteo Folin matteo.folin a gmail.com
Mar 15 Dic 2009 09:02:12 CET


Riassumo le mie umili conclusioni:

Prima di tutto nell'app. chat e msg erano già risorse rest, e tutto 
funzionava bene. Il problema mi sorgeva cercando di gestire molte chat 
aperte su molte pagine (le chat seguono l'utente su tutto il sito), per 
tenere traccia delle cose aperte utilizzavo le session, però le 
richieste ajax degli aggiornamenti, delle chiusure ecc ecc si 
incrociavano e quindi problemi di concorrenza come ottimamente descritto 
nell'articolo citato da Paolo.

La mia soluzione è stata barbaramente gestire le informazioni relative 
alle chat aperte da ciascun utente in una tabella, aggiornata via metodi 
privati del controller chat. Grezzo ma efficace. Una risorsa rest mi 
sembrava esagerata allo scopo (anche se sarebbe stato tranquillamente 
fattibile).

L'insegnamento che ho tratto è che non posso usare le session per stati 
che variano via ajax, a meno di non essere assolutamente sicuri che non 
si "sovrappongano" più richieste (se le diverse richieste ajax partono 
solo da stati differenti del sistema).
Per star tranquillo come mia regola non aggiornerò mai l'hash session in 
action ajax. Di fatto limitando l'uso delle session ai dati di autentica 
e magari qualche preferenza temporanea dell'utente.

Grazie dell'aiuto.
-- 
Posted via http://www.ruby-forum.com/.


More information about the Ml mailing list