H5关于用户登录凭证的延续问题

H5开发内嵌到别的APP里面,用户授权之后或有一个只有用户登录凭证

遇到一个问题,用户登录凭证的存储
是存储在 localstorage还是 sessionstorage

localstorage

长期存储,关闭页面后不会消失。第二次从APP进入,不会重新授权,不会刷新登录凭证。

sessionstorage

临时存储,页面关闭会消息。每次打开APP进入页面,都会新授权,刷新登录凭证。

一般情况下,内部页面跳转,整个页面的交互只在本项目页面内部跳转,这种情况下 sessionstorage 是比较合适的。

但是我们现在的页面一般都会 内嵌别人的第三方页面。
如果使用 sessionstorage ,跳转第三方页面后,回来session 就没有了。然后又需要登录授权。这个就很麻烦。

使用localstorage 存储,虽然不会出现跳第三方回来后登录失效的问题。但是当服务器端的 登录凭证失效的时候,前端在做页面的时候,就会出现请求了接口,业务接口报 登录凭证失效

这种情况的解决办法:

使用 localstorage存储登录凭证 token的 同时,再存储一个 token失效时间。
例如: 假设登录 token 失效时间是48小时那么存储的时候
localstorage 存储一个 token = “asad1231asdas12312sdadad”,
还需要储存一个token_timeout=“20220111174700”,就是失效时间。

前端H5在判断token 是否有效就是:判断是否存在和在有效期内,2着都满足,才能算有效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值