2015-04-25 55 views
3

我正在一個Web應用程序(與表單等接口 - 服務器 - 分貝)。我使用AngularJS,NodeJS和MongoDB。 該應用程序在網上,但我仍然不提供用戶演示。我會爲他們提供登錄名和密碼(「演示」,「演示」)或只是一個「演示」按鈕來訪問演示版本。在公共界面上有簡短的介紹,聯繫表格等。如何向用戶提供帶有數據的Web應用程序演示?

有很多內部接口。一旦註冊用戶通過身份驗證,他就會根據其角色重定向到一個界面。所以我會建議一個按鈕或一個角色列表來選擇(接口取決於用戶的角色)。用戶選擇他想看的角色並打開演示。

那麼,如何在技術上組織這個演示版本?知道連接演示的用戶可能沒有相同的數據! 我應該創建一個與「真實」相同結構的空數據庫,並在用戶註銷後銷燬它嗎?在這種情況下,如何知道用戶是否離線?我應該創建一個批處理,在晚上刪除數據庫? 或者我使用相同的BD但用戶不同?但如果我有一個用戶:「演示」,「演示」或將按鈕重定向到演示,如何在界面上處理它?

網絡上的應用程序如何?

回答

1

你可以做一個單獨的數據庫爲您的演示環境,每天都會重置。此演示環境可能需要一些額外的代碼來自動驗證用戶身份,或者防止用戶刪除用戶帳戶等。您可能會開始結束垃圾郵件問題,但一旦發生這種情況,我會擔心。如果發生這種情況,可以在演示環境的登錄頁面上使用驗證碼。

我對你的應用程序瞭解不多,所以請在這裏使用你的判斷。

1

一個簡單的解決方案可能是在節點代碼中生成userId並將其作爲變量傳遞給頁面。然後,如果用戶登錄到演示並且該ID不存在於數據庫中,請啓動一個新用戶。

可以使用cookie或localStorage的跟蹤用戶,如果他們再次登錄

然後用一個cron任務的同時淨化您的數據庫一旦

+0

你建議我在生產數據庫上創建用戶並在cron進程中清除它?好。我可以在客戶端桌面上爲演示創建客戶端(使用演示類型)(例如)。這是一個想法... – slim

+0

但是,如果我將用戶信息保存在cookie中,爲什麼要創建一個cron來清除數據庫中的此用戶? – slim

+0

只要在那裏知道你的應用程序或演示流量 – charlietfl

相關問題