2016-10-19 30 views
1

我正在開發一個IOS swift 3應用程序從一個安靜的Web API獲取數據。第一個屏幕是登錄屏幕。它要求輸入用戶名和密碼。該應用程序去web調用一個身份驗證方法(匿名訪問),並返回,如果用戶進行身份驗證或不。 Web api使用基本身份驗證。我可以在IOS Swift應用程序中以單例存儲用戶名和密碼嗎?

在ios應用程序中,我成功登錄後將用戶名和密碼保存在單例中。從此,無論何時我需要調用web api,我都會從單例中檢索用戶名和密碼,並將它們放入我的http標題「授權」參數。 當應用程序關閉時,單身人士將消失。 在我看來,這就像一個保存狀態的桌面應用程序。那麼爲什麼沒有人這樣做呢?每個人都在做Keychain,URLCredential等。

謝謝!

回答

0

您可以將用戶名和密碼保存爲單身人士。但是,當應用程序被終止時,用戶將不斷需要輸入用戶名和密碼。因此,鑰匙鏈。 如果您的api在成功登錄後支持令牌,您還需要保存令牌

+0

感謝您的回答。我的API還不支持Token。也許下一輪。我也使用鑰匙串。 –

1

是的,您可以。雖然它不推薦,因爲像neprocker說,你將不得不再次輸入它。

例如,如果您的應用使用了令牌(如OAuth),則應該只保存刷新令牌。不是用戶名或密碼,這是使用令牌的想法。該應用程序不應該保留用戶的私人信息。

一旦令牌到期,應用程序應該請求用戶再次輸入用戶名和密碼來檢索令牌並再次保存。

相關問題