我正在寻找一个好的设计模式来刷新会话,即使它从Web服务器过期了。
方法1:
登录系统并保存密码。在iOS应用程序的情况下,我可以在密钥链中保存密码。如果是这样,那么在iOS中存储的特性是什么。成功登录后,将在应用程序端收到一个令牌。此令牌将用于所有请求发送(移动应用程序)。如果任何请求因会话过期而失败,我们可以编写单独的函数来根据凭证重新生成令牌。
方法2:
登录系统,将从服务器生成令牌。令牌将在所有响应上发送给客户端,客户端使用旧swell作为新令牌进行验证。如何设计自动会话刷新的结构。
SREE
答案 0 :(得分:0)
最常见也是最佳做法是让api在成功从客户端登录后发出会话令牌。
然后,移动客户端可以在本地存储(有许多存储方法),核心数据,默认存储或甚至钥匙串(可能是过度杀伤)。
移动客户端每次向api发出网络请求时,都会在请求中包含会话令牌,服务器将更新此令牌到期时间(您可以在24小时内过期,1周,1个月等)。
如果会话令牌过期,客户端应该通过自动注销用户并显示登录表单来做出反应。