Я видел несколько экземпляров теперь, где веб-приложения позволяют, испытывают их без Вас имеющий необходимость подписаться (хотя сохранить Вас, должны, конечно).
пример: попробуйте по http://minutedock.com/
Я задаюсь вопросом о выполнении этого для моего собственного веб-приложения, и фундаментальный вопрос состоит в том, сохранить ли их информацию в сессии или во временную пользовательскую таблицу?
Временная пользовательская таблица позволила бы регистрироваться и потенциально была бы меньшим количеством хита на сервере, корректном?
Здесь существует ли лучшая практика?
Он должен работать точно так же, как обычно работает приложение. , с той лишь разницей, что установлен флаг вроде thisIsATrialUser
. Вы не должны создавать два разных способа делать что-то внутри компании.
Чтобы очистить данные, добавленные пользователями пробной версии, вы можете создать сценарий для удаления всех данных, которые были созданы за время существования cookie + 1 день и принадлежат любому пользователю пробной версии. Вы можете автопилотировать скрипт с помощью nightly cron.
Создайте класс пользователей, назовите его своим Анонимным типом пользователя . Предоставьте всем неаутентифицированным пользователям анонимные учетные записи (в какой-то момент вам придется очистить старые учетные записи). Используйте постоянный файл cookie, чтобы связать старых пользователей с их анонимной учетной записью. Заставьте их аутентифицировать себя всякий раз, когда им нужно выполнить что-то, требующее оплаты или полной регистрации. Измените их тип пользователя на что-то вроде Тип обычного пользователя после их аутентификации, чтобы вы могли сохранить всю информацию, которая уже была прикреплена к ним, когда они были анонимными.
Это позволяет отслеживать и хранить потенциальную информацию, например о тележках для покупок, без предварительной регистрации. Ваш код не должен сильно меняться, если вы относитесь к анонимному пользователю так же, как и к обычным пользователям. В противном случае вам придется создать совершенно новый набор кода для управления специальными пользователями, которые не хранятся в вашей таблице основных пользователей.