我正在开发一个 IOS swift 3 应用程序,从一个 restful web api 获取数据。第一个屏幕是登录屏幕。它要求输入用户名和密码。该应用程序转到 web api 调用身份验证方法(匿名可访问)并返回用户是否通过身份验证。 Web API 使用基本身份验证。
在ios应用中,我在登录成功后将用户名和密码保存在一个单例中。从那时起,每当我需要调用web api时,我从单例中检索用户名和密码并将它们放入我的http header “授权”参数。 当应用程序关闭时,单例将消失。 在我看来,这就像一个保存状态的桌面应用程序。那么为什么没有人这样做呢?每个人都在做钥匙串(keychain)、URLCredential 等。
谢谢!!
最佳答案
是的,你可以。尽管不推荐这样做,因为就像 neprocker 说的那样,您将不得不重新输入。
例如,如果您的应用使用 token (如 OAuth),您应该只保存刷新 token 。不是用户名或密码,这是使用 token 的想法。该应用不应保留用户的私有(private)信息。
一旦 token 过期,应用程序应要求用户再次输入用户名和密码以检索 token 并再次保存。
关于ios - 我可以在 IOS Swift 应用程序中将用户名和密码保存在单例中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40134296/