taro-vue小程序开发记录三【缓存用户登入信息,实现自动登入和登入失效验证】

一、内容:缓存用户登入信息,实现自动登入和登入失效验证

 

 

二、代码:

  设置缓存信息:Taro.setStorageSync("loginData",loginData)    ;

  获取缓存信息:Taro.getStorageSync('loginData');

  调用登入接口成功后缓存用户信息和登入状态

  在登入页面初始化时可以在created,mounted,onshow中获取缓存来判断用户登入状态在缓存是否存在,如存在则自动登入;方法之间的区别参考

  在ajax拦截器中判断用户登入状态缓存是否存在,如不存在则提示登入失效并跳转到登入页面

  登入成功后接口会返回用户基本信息和安全密钥,缓存后再后续调用需安全验证接口时传入后台进行安全验证,可统一封装至请求方法中,避免重复操作,页面在请求时就只需要负责各自方法内所需要的请求参数了。

三、总结:

  1、.setStorageSync和.setStorage方法实现语法是不一样的,注意区分,语法使用错误页面不会报错,但程序中将获取不到缓存,要仔细检查代码。我就在这里查了好久,还查出另一个问题,最初在created方法中使用Taro.getStorageSync获取不到缓存,网上查资料时也碰到一人遇到这个问题,解决方法是说将created换成onshow,但还是没有解决我的问题,就是因为我在设置缓存的时候使用了

Taro.setStorageSync({
key:"key",
data:"value"
})
这个语法是不对的,同步的方法是Taro.setStorageSync("key",value)   ,但这个语法编译也没有报错,页面也没有错误信息。但是console的Storage是没有记录的,也就没有存到缓存中去,所以在登页初始时获取不到。后面改了语法之后,created,mounted都是可以获取到的。

 

posted @ 2021-03-30 10:48  咖啡昂vs咖啡猫  阅读(690)  评论(0)    收藏  举报