Ciaooo,
oggi ho un quesito filosofico ...
è meglio utilizzare i cookies o le session,
per tenere traccia della login dell'utente collegato
ad una intranet ?
Sono parecchio indecisa...
Clara![]()
Ciaooo,
oggi ho un quesito filosofico ...
è meglio utilizzare i cookies o le session,
per tenere traccia della login dell'utente collegato
ad una intranet ?
Sono parecchio indecisa...
Clara![]()
Mi è parso di capire che le variabili di sessione sono
utili quando ci sono poche info da memorizzare (nel mio
caso solo il login), mentre i cookies siano più consigliati
nel caso opposto.
:tongue:
Le session sono indubbiamente più comode da usare ma credo che sia meglio non usarle per due motivi:
1) occupano spazio in memoria
Tieni conto che se io creo 10 variabili session queste rimaranno in memoria sul server almeno per 20 minuti (tempo variabile in base alle impostazioni, ma in genere 20 è il valore di default), anche se il client ha chiuso il browser
2) Se non si fa attenzione nell'uso di variabili session si rischia di avere variabili session sparse nel codice che magari non servono più.
Per quanto riguarda i cookie ci sono due problemi:
1)il client può non accettarli e in tal caso non puoi memorizzare informazioni sul client.
2) c'è un limite nella quantità di informazioni che puoi memorizzare (non ricordo quale)
Secondo me bisogna valutare caso per caso, tenendo in considerazione:
1) quantità delle informazioni da memorizzare
2) numeri di utenti che normalmente visitano il sito
3) caretteristiche del server (RAM, CPU .....)
Grazie OrazioGr per la risposta esauriente...
Dato che nel mio caso devo solo tenere in memoria
la login dell'utente collegato alla intranet e che
gli utenti collegati, nel peggiore dei casi, sono un
centinaio (i dipendenti dell'azienda)...
credo sia opportuno utilizzare le SESSION...
Oppure trovi che 100 session in contemporanea possono
creare problemi ?
Purtroppo le caratteristiche del server ancora non
le conosco, sto sviluppando su un server di test...
mentre aspetto che acquistino il server reale![]()
Gra-Grazie !![]()
per la login la SESSION è l'ideale, vai tranquillaOriginariamente inviato da ClaraF
Grazie OrazioGr per la risposta esauriente...
Dato che nel mio caso devo solo tenere in memoria
la login dell'utente collegato alla intranet e che
gli utenti collegati, nel peggiore dei casi, sono un
centinaio (i dipendenti dell'azienda)...
credo sia opportuno utilizzare le SESSION...
Oppure trovi che 100 session in contemporanea possono
creare problemi ?
Purtroppo le caratteristiche del server ancora non
le conosco, sto sviluppando su un server di test...
mentre aspetto che acquistino il server reale![]()
Gra-Grazie !![]()
![]()
Stavo pensando che puoi fare un lavoro del genere
ti puoi creare una classe che ti ritorna il valore che devi memorizzare, al suo interno il valore sarà recuperato o tramite session o tramite cookie mi spiego meglio:
public class cMem
{
public string getLoginId(System.Web.UI.Page page)
{
string ritorno = "";
// se vuoi usare la session
ritorno = page.Session("LoginID").ToString());
// se invece vuoi usare i cookie
ritorno = page.Request.Cookies("LoginID").ToString();
return ritorno;
}
}
L'esempio è in c# ma penso che non sia difficile realizzarlo in vb.net o anche con le vecchie ASP.
in questo modo puoi decidere in qualsiasi momento se usare i cookie o le session senza dover modificare in nessun modo le varie pagine del sito.
Prova a usare le session e se noti che le prestazioni non sono ottimali o che il server va spesso giù, cambia e usa i cookie.
Dimenticavo di dirti che con le session hai il problema del "SessionTimeout" quindi se io apro l'applicazione, mi loggo, e poi, per qualsiasi motivo non uso l'applicazione per molto tempo, quando rientro devo rifare il login, mentre con i cookie questo problema non sussiste
Tieni pure conto che essendo una intranet hai un maggior controllo sui client, nel senso che puoi imporre l'uso dei cookie.
Ciao
E' una buona idea !
Potrei metterla in pratica per rendere più libero il codice![]()
Non ho problemi a far riloggare gli utenti.
La rete è Novell e quando il mio utente cerca di collegarsi
alla intranet, utilizzo un ocx che estrae il login novell.
L'utente non se ne accorge neppure![]()
Quando scatta il TimeOut basta riacchiappare il login usando
l'ocx... o almeno spero![]()
... comunque è vero che posso anche forzare tutti gli utenti ad
accettare i cookies :sexpulp:
Clara
Stavo pensando che puoi fare un lavoro del genere
ti puoi creare una classe che ti ritorna il valore che devi memorizzare, al suo interno il valore sarà recuperato o tramite session o tramite cookie mi spiego meglio:
public class cMem
{
public string getLoginId(System.Web.UI.Page page)
{
string ritorno = "";
// se vuoi usare la session
ritorno = page.Session("LoginID").ToString());
// se invece vuoi usare i cookie
ritorno = page.Request.Cookies("LoginID").ToString();
return ritorno;
}
}
L'esempio è in c# ma penso che non sia difficile realizzarlo in vb.net o anche con le vecchie ASP.
in questo modo puoi decidere in qualsiasi momento se usare i cookie o le session senza dover modificare in nessun modo le varie pagine del sito.
Prova a usare le session e se noti che le prestazioni non sono ottimali o che il server va spesso giù, cambia e usa i cookie.
Dimenticavo di dirti che con le session hai il problema del "SessionTimeout" quindi se io apro l'applicazione, mi loggo, e poi, per qualsiasi motivo non uso l'applicazione per molto tempo, quando rientro devo rifare il login, mentre con i cookie questo problema non sussiste
Tieni pure conto che essendo una intranet hai un maggior controllo sui client, nel senso che puoi imporre l'uso dei cookie.
Ciao
ma le session funzionano se il client disattiva i cookies del tutto?Originariamente inviato da oraziogr
Le session sono indubbiamente più comode da usare ma credo che sia meglio non usarle per due motivi:
....
io sapevo di no![]()