簡體   English   中英

如何在手機中強制執行唯一的用戶名

[英]How to enforce unique username in a mobile

我正在開發需要唯一用戶名的應用程序。 因此,當用戶輸入名稱時,我需要向服務器檢查該名稱是否可用? 這樣做的最佳策略是什么? 我有一些想法,但是如果已經有了一個好的解決方案,我就不想重新發明輪子並弄壞它。 這是我的一些想法

  1. 用戶輸入說4個字母后,對於用戶輸入的每個新字符,請在服務器上檢查字符串是否可用作名稱。 如果是,請這樣說。 如果否,請這樣說。
  2. 等待用戶完全輸入名稱,然后單擊“檢查可用性”。 然后告訴用戶是否使用名稱或名稱是否可用。
  3. 與策略1相同,但不必每次都與服務器進行檢查:讓服務器發回以前綴開頭的1000個字符串,以便我可以在本地進行檢查。 如果在列表中未找到前綴,則檢查服務器並返回另一批; 直到用戶輸入在當前批次中不匹配並且在后續服務器查詢中也不匹配的字符串/前綴。

到目前為止,這是我正在考慮的三個想法。 我想保護用戶設備的電池壽命,同時節省服務器成本(我正在使用App Engine數據存儲)。 但是,最重要的當然是用戶體驗。

目前,我正在開發iOS版本。 但我認為答案可能同樣適用於任何其他平台。

注意

我在應用程序中將用戶名與用戶ID區分開來:用戶名是所有用戶都可以看到的名稱(例如Stack Overflow或Twitter或Instagram上使用的用戶名)。 UserId是私鑰(在這種情況下,我只是使用私密電子郵件地址)。

如果我開始在顯示名稱字段中輸入“ Andrei Volgin”,那么對於用戶來說,在我鍵入“ Andrei Vo”后開始向我顯示“可用”對我不是很有幫助。 此時,您將同時使用電池壽命和數據計划,並且可能會降低慢速網絡上的體驗,而不會給用戶帶來任何好處。

我認為更好的策略是在用戶提交名稱時檢查可用性。 該響應可以包括使用一組規則創建的建議替代名稱的列表。 例如,如果“ Andrei Volgin”不可用,您可以檢查並建議“ A Volgin”,“ Andrei_Volgin”等(如果可用)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM