问: unionid 可以代替 openid 那么 openid 意义何在?
问: 同一个用户会出现不同 openid 的情况, 如果 openid unionid 都要存的话表设计如下可? (考虑到 QQ 微博 微信)
tab_user
id openid type //openid 存的微信的 unionid 或 QQ 的 openid 微博的 uid
tab_wx_user
id tab_user_id openid //关联上方的 unionid 及相关用户的 openid
1
pubby 2017-09-14 10:43:48 +08:00 via Android 1
都存,openid 有其他用处,发送消息,微信支付啥的要用到
|
2
zeayes 2017-09-14 10:43:54 +08:00 1
openid 是针对应用唯一的,unionid 是针对企业唯一的。
QQ 也是支持 unionid 的,微博只有 openid。 第三方登录可以存在一张表里面,用类型区别就可以了。 |
3
linxl 2017-09-14 10:50:23 +08:00
unionid 是需要关联另一个平台 (忘记叫啥) 才会看到的. 不然你微信网页授权只会拿到 openid.
|
6
stop9125 2017-09-14 11:00:41 +08:00 via iPhone 1
unionid 是对企业唯一的,开放平台和公众平台的 openid 不一样。建议存一下
|
7
stop9125 2017-09-14 11:01:39 +08:00 via iPhone
有些场合还是只能用 openid,微信就这么蛋疼。
|
8
Jealee 2017-09-14 11:02:29 +08:00 2
unionid 是微信开放平台的。至于作用的话——
对于绑定了同一个开放平台的两个服务号 A 和服务号 B,用户 1 关注 A 和 B 会有不同的 openid,但他们的 unionid 的相同的。 也就是说可以用它来确定多个公众号的用户是否是同一个人。当然可以通过公开信息判断,但并不严谨,因为资料都是可以修改的,雷同也是完全可能的。 当然,其实不用 unionid 也是可以实现这个需求的。方法是,每次用户第一次访问公众号页面,让他自动跳转一个固定的公众号(静默授权,记录 openid ),再跳回来。这样的话不需要通过 unionid 也能知道用户在多个公众号是否为同一人。唯一的缺点就是用户的第一次访问页面需要跳转多次。 |
9
xoxo419 OP |
10
pubby 2017-09-14 12:28:59 +08:00 via Android
|
11
onlyhot 2017-09-14 12:34:56 +08:00
openid 必须存。openid 是针对单个应用。unionid 是用来识别某个客户在同一个开放平台下的多个应用之间是否是同一个客户。
|