2010-06-18 17 views
6

He visto algunas instancias en las que las aplicaciones web están permitiendo probarlas sin tener que registrarte (aunque para hacerlo debes hacerlo por supuesto).Permitir que los usuarios prueben su aplicación web antes de iniciar sesión: ¿sesiones o temperatura db?

ejemplo: probar en http://minutedock.com/

me pregunto acerca de hacer esto por mi propia aplicación web y la cuestión fundamental es si desea almacenar su información en sesiones o en una tabla de usuario temporal?

La tabla de usuario temporal permitiría el inicio de sesión y, potencialmente, un menor impacto en el servidor, ¿correcto?

¿Existe una mejor práctica aquí?

Respuesta

4

Debería funcionar exactamente de la misma manera que la aplicación generalmente funciona, con la única diferencia de que se establece un indicador como thisIsATrialUser. No deberías crear dos formas diferentes de hacer las cosas internamente.

+0

Exactamente +1. Tal vez 'isTrialUser' se comunique con la suficiente eficacia, y también es más corto. :) – alex

+0

@alex Me gusta ser detallado en ejemplos. ;) – deceze

+0

gracias. Tomaré ese enfoque junto con escribir la aplicación de una manera más POO. Por el momento está un poco improvisado – Mat

2

Cree una clase de usuario, vamos a llamarlo Tipo de usuario anónimo. Otorgue cuentas anónimas a todos los usuarios no autenticados (debe limpiar cuentas antiguas en algún momento). Use una cookie persistente para asociar usuarios antiguos con su cuenta anónima. Haga que se autentiquen ellos mismos cuando necesiten realizar algo que requiera pago o registro completo. Cambie su tipo de usuario a algo así como Tipo de usuario normal una vez que estén autenticados para que pueda mantener toda la información que ya estaba unida a ellos cuando estaban en el anonimato.

Esto permite rastrear y almacenar información potencial, como carritos de compra, sin necesidad de registrarse por adelantado. Su código no debería tener que cambiar mucho si trata a un usuario anónimo de manera similar a los usuarios normales. De lo contrario, debe crear un conjunto de códigos completamente nuevo para administrar usuarios especiales que no están almacenados en su tabla maestra de usuarios.

0

Para limpiar los datos agregados por los usuarios de prueba, puede crear una secuencia de comandos para eliminar todos los datos que se crearon de por vida de cookie + 1 día y propiedad de cualquier usuario de prueba. Puede pilotar automáticamente la secuencia de comandos con cron nocturno.

Cuestiones relacionadas