小程序开发 获取用户openId, unionId
官方文档:
https://developers.weixin.qq.com/miniprogram/dev/api/api-login.html
小程序开发时序图:
描述:
- 前端通过wx.login()获取用户code
- 将code发送至后台服务器, 与开发者的appId和secret一起, 请求微信接口:
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
获得session_key, session_key 是对用户数据进行加密签名的**. 通过session_key对象可以获得用户的openId和unionId(unionId仅在该应用绑定到主体后才出现)
openId和unionId的区别:
两者都是用户的唯一标识, 却别在于范围不同.
若相同主体(同一微信开放平台)下绑定一个微信小程序和一个微信公众号, 且用户已授权登录过两者, 则该用户unionId在两个应用中是一样的, 但两个应用的openId是不同的, openId仅仅是用户在该应用下的唯一标示.