Domanda

Nell'applicazione che sto sviluppando devo memorizzare il tempo in cui alcuni utenti particolari rimangono connessi all'applicazione, sfortunatamente, nelle applicazioni Web, ci sono diversi modi in cui l'utente può disconnettersi.

  1. I clic dell'utente si disconnettono.
  2. La sessione utente scade.
  3. L'utente chiude la finestra.
  4. L'utente digita un altro URL del sito nella barra degli indirizzi.

Il primo è abbastanza semplice perché l'applicazione ottiene il controllo del processo di disconnessione. Ma negli altri, diventa difficile.

Cosa faresti per risolvere questo problema?

È stato utile?

Soluzione

Ad ogni visualizzazione di pagina, aggiorna il tuo conteggio. Se si disconnettono, allora hai una misura accurata. Se si allontanano, o qualsiasi altro metodo, il massimo che ti manca è il periodo di tempo in cui erano su una pagina.

Se fosse davvero molto importante avere una misura accurata, allora forse un AJAX "battito cardiaco" ogni minuto, ma è molto probabilmente eccessivo.

Altri suggerimenti

Bene per # 3 e # 4 puoi allegare qualcosa all'evento window.onunload che ti dà il tempo per i calcoli, ma fai attenzione che il tuo codice sia abbastanza veloce da non scaricare completamente la pagina prima che la tua richiesta AJAX possa essere inviato.

Per quanto riguarda il n. 2, il "battito cardiaco" suggerito da Nickf è probabilmente la migliore soluzione lì.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top