我可以在 IOS Swift 应用程序中将用户名和密码保存在单例中吗?
Can I save username and password in a singleton in IOS Swift app?
我正在开发一个 IOS swift 3 应用程序,从 restful 网络 api 获取数据。第一个屏幕是登录屏幕。它要求输入用户名和密码。该应用程序进入网络 api 调用身份验证方法(可匿名访问)和 return 如果用户已通过身份验证。 Web api 使用基本身份验证。
在ios应用程序中,我在成功登录后将用户名和密码保存在单例中。从那时起,每当我需要调用网络api时,我都会检索用户名和从单例中获取密码并将它们放入我的 http header "Authorization" 参数中。
当应用程序关闭时,单例将消失。
在我看来,这就像一个保存状态的桌面应用程序。那么为什么没有人这样做呢?每个人都在做钥匙串、URLCredential 等
谢谢!!
您可以在单例中保存用户名和密码。但是,当应用程序被终止时,用户将不断要求输入用户名和密码。因此,钥匙串。
如果您的 api 支持 Token 成功登录后,您也需要保存 token
是的,你可以。虽然不推荐,因为像 neprocker 说你必须重新输入。
例如,如果您的应用使用令牌(如 OAuth),您应该只保存刷新令牌。不是用户名或密码,这是使用令牌的想法。该应用不应保留用户的私人信息。
令牌过期后,应用程序应要求用户再次输入用户名和密码以检索令牌并再次保存。
我正在开发一个 IOS swift 3 应用程序,从 restful 网络 api 获取数据。第一个屏幕是登录屏幕。它要求输入用户名和密码。该应用程序进入网络 api 调用身份验证方法(可匿名访问)和 return 如果用户已通过身份验证。 Web api 使用基本身份验证。
在ios应用程序中,我在成功登录后将用户名和密码保存在单例中。从那时起,每当我需要调用网络api时,我都会检索用户名和从单例中获取密码并将它们放入我的 http header "Authorization" 参数中。 当应用程序关闭时,单例将消失。 在我看来,这就像一个保存状态的桌面应用程序。那么为什么没有人这样做呢?每个人都在做钥匙串、URLCredential 等
谢谢!!
您可以在单例中保存用户名和密码。但是,当应用程序被终止时,用户将不断要求输入用户名和密码。因此,钥匙串。 如果您的 api 支持 Token 成功登录后,您也需要保存 token
是的,你可以。虽然不推荐,因为像 neprocker 说你必须重新输入。
例如,如果您的应用使用令牌(如 OAuth),您应该只保存刷新令牌。不是用户名或密码,这是使用令牌的想法。该应用不应保留用户的私人信息。
令牌过期后,应用程序应要求用户再次输入用户名和密码以检索令牌并再次保存。