ios - 服务器响应用户已从我的 api 登录后的下一步是什么

标签 ios

我为我的 iOS 应用程序制作了一个 api,用户可以在其中登录和注册。现在 API 已准备就绪,可以响应我的应用程序,我需要在其中执行操作。

用户登录后如何处理服务器的响应?服务器在 NSString 中发送 "UserLoggedIn"

我是否需要为此创建一个单例类,我在其中存储一个带有 userLoggedin 的 bool 值及其密码和用户名,以供用户在关闭应用程序后再次打开应用程序时使用,因此用户将仍然登录。并且当用户按下注销时,凭据将从单例类中删除。或者这不是我应该走的路吗?

亲切的问候

最佳答案

您可以使用 session token ,而不是在客户端上存储用户名和密码。 session token 可以是服务器在成功验证后生成并返回给客户端的随机字符串。然后,客户端可以使用该 session token 与服务器进行通信,并且服务器知道谁在请求(并且可能验证权限等)。

您可以将 session token 存储在钥匙串(keychain)或不太安全的 NSUserDefaults 中,以便可以关闭应用程序但 session 保持事件状态。

当应用程序再次打开时,如果存在 session token ,您可以显示应用程序的“登录状态”,并在后台询问服务器 session token 是否仍然有效(如果结果是)无效,您可以注销用户)。

当用户注销时,只需从设备中删除 session token 并告诉服务器使 token 失效即可。

您询问的是单例模式,当然 - 创建一个单例来管理与服务器的 session 是您可以做的事情,以使您的应用程序的其余部分更容易。 [MySessionManager共享].isUserLoggedIn是该类可以提供的方法的示例,以及“注销”和“登录”等内容。

关于ios - 服务器响应用户已从我的 api 登录后的下一步是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25386501/

相关文章:

iphone - 如何保护我的应用程序的一部分不受某些用户的影响(即,其中一个选项卡式 View 只能由某些用户看到)

ios - 从 Nsstring 中提取特定字段

ios - WKWebView:当多个元素在同一文档中使用该大小时,文本在某些大小范围内以错误的大小呈现

ios - 检测子类方向变化的持续时间? IOS 7

ios - 音频单元记录噪音

objective-c - 序列化时 JSONKit 无法识别选择器

ios - 适用于 ios OAuth2、API V2 的 LinkedIn 登录。如何打开已安装的领英应用

ios - iPhone : Push Notification Testing on Production Certificate

iphone - 删除 http ://from NSString

ios - 如何过滤时间戳数组以保持特定时间?