关于微信内置浏览器安卓端session丢失问题

Posted 奔跑的蜗牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于微信内置浏览器安卓端session丢失问题相关的知识,希望对你有一定的参考价值。

项目上线测试,发现微信安卓端存在用户登录无法验证session情况, 导致每次接口请求都无法识别,而苹果客户端不会出现此问题,非微信环境打开不会出现此问题,找到一些解决方案做下记录:

方案1:

  由于微信内嵌浏览器对所有请求都做了代理,导致出去的ip不固定,从而导致腾讯云服务器的黏性session(基于客户端ip做的黏性session)失效。所以,解决方案有两个,要么服务器端只用一台tomcat,要么tomcat做session共享,比如 session放在Redis中。这样server1产生的sessionid,即使到了server2,也能从redis中找到。

具体参考:http://blog.csdn.net/wangjun5159/article/details/51966137

方案2:

  取open_id,取到之后去数据库查,如果有直接登录,没有授权登录 完了把open_id 保存到数据库

方案3:

  在控制层保持值session后,跳转到页面,在页面进行操作后请求另一个控制层去取session中的值。

 

以上是关于关于微信内置浏览器安卓端session丢失问题的主要内容,如果未能解决你的问题,请参考以下文章

禁止微信内置浏览器调整字体大小

微信公众平台开发,那些走过的坑

微信内置浏览器清除缓存cookielocal storage清除(安卓手机)

如何用chrome在电脑上模拟微信内置浏览器

windows微信内置浏览器白屏检查方法

移动端video无法自动播放问题