微信公众平台内网页开发session不失效
开发环境:
thinkphp5.0.10
微信公众平台(服务号)
问题描述
说简单点就是session不失效,一两天,三四天都不失效。
我需要到是,退出一次公众号,就失效一次。
解决思路
在thinkPHP中设置session失效时间,结果-》没用,这就尴尬了,然后还不提示错误。
对于已有回答的统一回复
理论上来说,微信内置浏览器的确就是一个webview,相当于浏览器,理论上来说关闭后,原有session就会失效,但是我遇到到情况就是不会失效。
通过上一点,其实是被动到,我们自己主动解决,就是设置session到失效时间。我的系统里面有webpc端的后台,和微信公众号到前台。设置了session到失效时间后,webpc端是正常到,就是要设置到session失效时间处理到,但是微信公众号内页面还是没有失效。
这个问题应该不是理论上到问题,而是实际中到问题,就像请问大家有没有遇到这种情况,或者帮我分析下,可能是哪里到问题。
平台:centos7.0 lnmp.org安装环境 ,thinkphp5.0.10 微信公众号服务号
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(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失效掉?