关于微信openid没人提及过的几个问题


1.openid是否有时效性?是否过1、2个小时后就会不一样?
网上搜资料看到有人说过1、2个小时会不一样,导致他的项目出问题。

2.非高级接口,从xml获取到的openid,与高级接口OAuth授权获取到的openid是否有本质上的区别?
有人说从xml获取到的openid,是有时间限制的;通过授权得到的openid才是真正的openid没时间限制的。

3.同一个微信账号使用不同设备去访问同一个公众账号,产生的openid是否一样?
有人说openid加密时加入了当前设备的硬件系统标识等信息,所以用不同设备登录微信,产生的openid不一样。如果是真的,是不是说我一台android手机、一台iphone,关注了招行信用卡,假如我是用iphone的微信绑定信用卡账号的,是不是信用卡消费时消息只会发送到iphone的设备上呢?
如果是这样,怎么做到两台设备都能收到消费消息呢?

4.如果openid是会变化的,在实现与第三方应用账号绑定时,如何做好openid的自动更新?
如果openid是会变化的,我觉得新出的模板消息就没有什么优势,因为每次重新绑定新的openid都必须由粉丝主动发送消息才能更新openid,原来的客服消息就是这样一个模式,只不过是48小时限制,过了48小时,粉丝再次发送消息,公众号才能继续向这个粉丝发送消息;

openid 微信公众平台

新世界的卡米 10 years, 2 months ago

openid 是没有过期时间的..不像 access_token 只有 7200S的生存时间

openid 是微信用户 对公众的唯一标示,不会因为设备的不同而发生变化.

但是 每个用户对于 不同的微信公众号的 openid 是不一样的 所以微信添加一个UUID的机制

通过XML文档获取的openid 跟 通过 Oauth 获取的openid是完全一样的~

消费是发送消息 应该是通过微信的模板消息~

人品二号机 answered 10 years, 2 months ago

1openid是不会过期的
2是一样的
3openid只和你的微信号和服务号(订阅号)有关,跟其他无关。也就是说你在一个服务号(订阅号)的唯一标识,是按一定算法生成的,不管你有没有关注这个号,都是不会变的

变成人的猫 answered 10 years, 2 months ago

你可以简单的理解为


 openid = hash(uid + app_id)

也就是说,对每个app可以做到用户id唯一,但是这个id又不是通用的,你在其它app上同样的用户,openid会完全不同,反正你无法通过这个id获取用户的任何信息。用户信息是腾讯的命根子,它不会随便给你的。

暗暗的布丁 answered 10 years, 2 months ago

Your Answer