V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
except10n
V2EX  ›  PHP

搜狐快站 更换公众号绑定后, 微信登录匹配到同一个账号(快站 UID) 是什么原理

  •  
  •   except10n · 2017-05-22 22:20:43 +08:00 · 2468 次点击
    这是一个创建于 2530 天前的主题,其中的信息可能已经有所发展或是发生改变。

    搜狐快站支持 绑定公众号, 绑定不同的公众号后 微信登录都可以匹配到同一个 快站 UID 原理是什么 抓包看了下 只请求了一次微信 OPENID. 如果只是记录 openid 的话 是关联不到同一个账号的.

    8 条回复    2017-05-23 23:56:32 +08:00
    horsley
        1
    horsley  
       2017-05-23 09:13:09 +08:00
    unionid
    except10n
        2
    except10n  
    OP
       2017-05-23 14:18:37 +08:00
    @horsley 并不是 unionid.
    vacker
        3
    vacker  
       2017-05-23 17:04:17 +08:00
    我也想知道。
    sobigfish
        4
    sobigfish  
       2017-05-23 22:32:40 +08:00
    unionid 可以后台通过 token 获取了,所以你只抓到一次的 openid
    except10n
        6
    except10n  
    OP
       2017-05-23 23:22:05 +08:00
    @sobigfish 我先描述下 快站的流程, 快站用的是公众号第三方平台的机制. 快站授权成功后, 用户登录时, 实际上走的是 绑定的公众号进行 Oauth. 自然已经得到了 openid 和用户信息. 但是这个 openid 仅仅是针对 授权的公众号. 并非"快站"本身的公众号. 那么这个 openid 如何定位到快站的 openid(或者其他某种关联 ID)

    而 unionid 的机制, 只能是 在 open 平台进行 多个不同 appid( APP, 公众号, 小程序)关联后, 才有一个统一的 ID. 但是快站并没有把 授权的公众号加入到快站的 open 平台账号下. 也就是说 不会走 unionid 这套机制了.

    而你复制的这个地址. 只是 openid 获取用户资料. Oauth 已经可以得到全部信息了. 并不需要服务端再调取一次.
    sobigfish
        7
    sobigfish  
       2017-05-23 23:49:51 +08:00
    抱歉没有用过第三方平台的公众号,逻辑上获取的 openid 应该是开发者(第三方平台)的吧,因为公众号本身也没有程序处理后台数据啊(不同公众号使用同一个第三方平台的你抓包过没?)
    except10n
        8
    except10n  
    OP
       2017-05-23 23:56:32 +08:00
    @sobigfish 刚开始 我也是猜测 如果是第三方平台会有一个 独立的 openid. 实际上并不是. 第三方平台只是一个代理公众号的作用. 里面涉及的 unionid 或者是 openid 都仅仅是 该公众号所属的.

    抓包试了过了. 特地用了全新的环境测试的(新微信, 新公众号) 测试的结果 快站只获取一次 openid (走的是绑定的公众号) 也就是快站可以得到 当前绑定公众号的用户信息.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1637 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:55 · PVG 00:55 · LAX 09:55 · JFK 12:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.