2015-03-25 14 views
0

我正在製作社交iOS應用。爲了「記住」用戶的登錄狀態,我做了什麼至今:如何使用Node.js後端記錄iOS應用中的登錄狀態

  1. 首次在/用戶登錄創建一個新帳戶,應用程序可以節省他/她在鑰匙串中的用戶名和密碼,當應用程序啓動時,在

    (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    // submit login 
    

    }

    該應用在鑰匙扣提交用戶名/密碼自動登錄用戶下一次;

  2. 在我的NodeJS設置會話到期時間爲2小時。

現在假設應用程序啓動並自動登錄後,如果應用程序長時間進入後臺(長於2小時),然後切換回前臺,用戶是否已更長時間登錄?

如果登錄狀態走了,我怎麼能保持登錄狀態?我能想到的是什麼再添自動登錄邏輯

- (void)applicationWillEnterForeground:(UIApplication *)application { 
    // submit login 
} 

但是那不是太多數據傳輸參與?

或者,也許我可以設置在服務器端的永久性會議時間?這甚至有可能嗎?實現這一功能

回答

2

最好的辦法是生成適用於移動設備的令牌密鑰可以在相當長的時間內過期,你可以把它像活30天,只能手動無效,直到用戶註銷。

+0

所以在我的理解中,你指的是訪問令牌?我如何生成訪問令牌,是否有算法來生成它?我看到OAuth可能能夠做到這一點,儘管我還沒有深入研究,是嗎? – dulan 2015-03-25 11:34:33

+0

是的,OAuth具有生成令牌的功能,它將在服務器端,客戶端只需將其存儲併發送給API作爲關鍵參數。這是Java的一個函數來生成它。 http://stackoverflow.com/questions/17141292/oauth-2-0-generating-token-and-secret-token – Retro 2015-03-25 11:41:16

+0

太棒了,謝謝!標記爲接受的答案。 – dulan 2015-03-25 11:42:49

相關問題