微信开发页面授权登录,获取access_token该如何存取

Kylin_Shaw 发布于 2015/10/27 00:06
阅读 2K+
收藏 0

这个ACCESS_TOKEN不是基础的那个ACCESS_TOKEN,是自动授权的那个,以下称做SNS_TOKEN吧

因为刚开始看到SNS_TOKEN也有一个

expires_in

所以我吧SNS_TOKEN的处理方式和ACCESS_TOKEN的处理方式弄成一样的,设置称静态,到期重新获取。

但是发现这个行不通,里面还包含了openid,弄成静态的话,openid也不变了。然后我准备弄一个静态MAP去存放每个不同openid的SNS_TOKEN,但是发现openid的获取在获取SNS_TOKEN之后(获取SNS_TOKEN之后再去getOpenid,我吧SNS_TOKEN弄称对象了),还是不行。

现在想把它放进session里面,但是不知道点击关闭页面,退出微信之后还能不能从session里面获取。估计是不行。

求一个解决思路。。。。

千万别告诉我每次都重新获取啊。不然

expires_in

的意义何在。。。

还有一个SNS_TOKEN强制刷新的接口,感觉没啥用啊,我都没有强制刷新过,但是获取基本信息什么的,也没啥问题。

加载中
0
54mark
54mark

expires_in保存成 当前时间戳 + expires_in。

每次获取前,先用当前时间比对下expires_in呗。

0
mynawang
mynawang
建议放redis里,opneid作为key,设置过期时间即可
Kylin_Shaw
Kylin_Shaw
回复 @mynawang : 可能我现在有点想岔了,我再想想
mynawang
mynawang
回复 @kylinshaw : 那你取openid过来后如何和user关联起来的?怎么关联就怎么设置sns_token的key就行了
Kylin_Shaw
Kylin_Shaw
这个和我前面想的放静态map优点相似,但是同样的,openid是在我的SNS_TOKEN获取之后才能拿到的,应为刚开始不知道openid,没法判断是否为空是否过期
返回顶部
顶部