我正在研究一個需要與服務器通信的ios應用程序。當用戶第一次啓動應用程序時,系統會提示他輸入他的用戶名和密碼。一旦他通過身份驗證,我想讓他登錄,直到他明確退出。保持ios應用程序登錄的最佳方式是什麼?
在蘋果文檔中挖了幾個小時後,我可以指出兩種方法來實現這個想法: < 1>使用http basic/digest認證。 一旦用戶通過身份驗證,我在鑰匙串中保存用戶名和密碼。無論何時服務器需要身份驗證,通過執行連接:didReceiveAuthenticationChallenge:函數,應用程序可以加載用戶名和密碼,並構建合法的NSURLCredential。當然它會起作用,但每個請求都必須經過一次認證並經常傳輸用戶密鑰。
< 2>使用http cookie 一旦用戶通過身份驗證,服務器就會在cookie中使用唯一標記進行響應。取決於功能The URL loading system automatically sends any stored cookies appropriate for an NSURLRequest。我不確定當用戶殺死應用程序時cookie是否會丟失。
你認爲這兩種方法都可以嗎?哪一個更好?有沒有其他方法可以做同樣的事情?
我注意到許多客戶端(twitter/facebook/...)保持用戶登錄,他們使用什麼方法? 謝謝;
順便說一句,我已經在鑰匙串中保存了用戶名和密碼,但爲了保持登錄狀態,我認爲還有更多工作要做。
在設備的鑰匙串保存您的用戶名和密碼。看到這個http://stackoverflow.com/questions/6972092/ios-how-to-store-username-password-within-an-app – Tirth
我已經保存在鑰匙串的用戶名和密碼,但保持登錄,還有更多要做的工作。 – xjdrew