微信公众平台内网页开发session不失效

开发环境:

  1. thinkphp5.0.10

  2. 微信公众平台(服务号)

问题描述

  1. 说简单点就是session不失效,一两天,三四天都不失效。

  2. 我需要到是,退出一次公众号,就失效一次。

解决思路

  1. 在thinkPHP中设置session失效时间,结果-》没用,这就尴尬了,然后还不提示错误。

对于已有回答的统一回复

理论上来说,微信内置浏览器的确就是一个webview,相当于浏览器,理论上来说关闭后,原有session就会失效,但是我遇到到情况就是不会失效。

通过上一点,其实是被动到,我们自己主动解决,就是设置session到失效时间。我的系统里面有webpc端的后台,和微信公众号到前台。设置了session到失效时间后,webpc端是正常到,就是要设置到session失效时间处理到,但是微信公众号内页面还是没有失效。

这个问题应该不是理论上到问题,而是实际中到问题,就像请问大家有没有遇到这种情况,或者帮我分析下,可能是哪里到问题。

平台:centos7.0 lnmp.org安装环境 ,thinkphp5.0.10 微信公众号服务号

阅读 8.3k
6 个回答

session是否失效一般是与server设置有关系的。
“退出一次公众号” 不明白这个操作是啥意思?是关闭微信浏览器吗?我所了解,是需要结束微信进程的。

session有个配置cookie:{expires:'session'} 可以设定关闭浏览器(是指关闭整个浏览器或者结束微信进程)来使session来失效。

你可以找下thinkphp对应的配置。

这个审核期太长了,我来手动顶一下

客户端浏览网页是用webview来实现的,每次退出打开相当于浏览器的退出打开。
so,要么用cookie设置过期时间,要么用token,然后存LocalStorage。

退出登录的时候
把cookie清除掉
但是cookie没有显式的删除函数,应该将cookie的expire设置为过期时间,如1小时前等,就会自动触发浏览器的删除机制,例如:setcookie('name', 'lisi', 0)就能清除这个叫name的cookie属性

新手上路,请多包涵

我也遇到这个问题,微信的浏览器内 session 不会失效,跟 pc 端浏览器不同。除非你退出你的微信号。

新手上路,请多包涵

我也遇到了,session不会失效,有没有什么办法手动把这些session失效掉?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题