希望微信同事明确严谨的解答问题,并完善开发文档(你们的随意,会给我们增加几倍的工作量,)。
小程序获取unionid,是不是在配置了开放平台后,用户必须先关注公众号才能获取到?
小程序开发文档表述非常不清楚,见下:
在code 换取 session_key表述中,返回参数
unionid | 用户在开放平台的唯一标识符。本字段在满足一定条件的情况下才返回。具体参看UnionID机制说明 |
在unionid机制说明中描述
“同一个微信开放平台下的相同主体的App、公众号、小程序,如果用户已经关注公众号,或者曾经登录过App或公众号,则用户打开小程序时,开发者可以直接通过wx.login获取到该用户UnionID,无须用户再次授权。”
只说明了一种情况——先关注公众号,后进入小程序,通过wx.login接口获取unionid。
我现在需要用下面的接口获取unionid:
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
我的问题在这里。
这里的第一种情况,不需要用户关注该公众号,但是需要用户授权,然后可以解出unionId。
前有支付宝文档,再看微信文档。我眼睛都瞎了!看个微信文档你得了解整个原理。支付宝直接拿来就用了。脑袋疼。
就是,搞半天 我说一下我遇见的繁琐问题: 1. 获取code开始,就遇见问题,明明小程序自己都可以获取到session_key!为啥还要去后台获取?
2.encryptedData、session_key和iv获取到了,需要对其解密,为什么给我们的Demo里面没有Crypto等需要解密的必要js?
3.解密出来了 unionid又没有,需要绑定公众号或小程序,开始unionid机制满足我还没搞懂是什么玩意儿,unionid机制说白了就是想说我想收钱了!
提醒:unionid是唯一的、用户需要的、开发者纠结的,请微信同事认真写文档!OK?
【一步一步写清楚不行么?】: 获取code->获取session_key和encryptedData、iv->绑定公众号或小程序(交RMB)-->Crypto解密->获取unionid->
最讨厌看这类的文档,不说清楚
求解释。新用户就是无法获取到unionid
希望微信的人快点严谨的写开发文档
验证过
公众号认证
关联小程序,小程序认证过
开放平台认证了(交了300)且绑定了。
问题还是一样。
复现的情况:
新用户
直接访问小程序
完成相关登录/授权后调用下面的接口
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
貌似登录过都不行 。公众号是认证的 。
2楼的估计可以,明天再试试看
需要到开放平台交300元认证,然后把公众号和小程序都添加到开放平台关联起来,这样才能获取到UnionID
不需要,登陆过也可以。