小程序A现在没发更新,审核不通过理由:公司A主体涉及外资,无法通过。 用户登录都时候没存union_id,识别用户用的是open_id(你们API登录流程上写的上用open_id识别用户,照着你们的用户登录流程来的,现在被坑死)
因为没发重新认证,现在公司想把小程序关联到不涉及外资到公司B,那么只能重开一个新的小程序B
这样呢,老用户登录B,返回的open_id会变,这样老用户数据就关联不上了,老用户之前的数据就会丢失。 还有,我们有个“学习圈子”的功能,是用分享到群后返回的oepn_gid来维持这个圈子的。现在B小程序,返回的open_gid也会变,这样之前建立的圈子信息,也会丢失。
APPID:wx6baee3e885e58959
更新:
通过引导用户关注同一主体下的公众号,然后获取union_id这条路也断了,必须是先关注公众号,再授权进入小程序才能通过login接口的code获取unionid
客观一点说,你对小程序登录机制还不熟悉,如果你熟悉登录流程,知道 open_id 与union_id 的用法就不会出现这种问题了
对于两个小程序用户信息互通应该是这样的:
去开放去台关联,这样你两个小程序的 wx.login 都会返回 union_id 了,A 后端需要记录并存储,这样老用户每次登录都会将自己的 union_id 记录下来
B 小程序在登录验证时不再以 open_id 为标识,因为已经做了关联,所以需要使用 A 产生的 union_id 使用验证身份
open_gid 这个是通过分享接口返回的,建议你早点做逻辑更改,因为这个接口会被废弃,分享后不再有任何信息返回,也是说在废弃后你是拿不到这个值的,可以修改为分享出去的 sharPath 中带有你自己后端产生的唯一标识,每一个从这个分享链接进来的用户你都会拿到这个标识 https://developers.weixin.qq.com/community/develop/doc/00082244e20898b040073de6e5b801
非常感谢你的回答。 我一直以为只有把那个encryptedData传到后台才能拿到,解密后才能获取到union_id(因为前端没向后台传encryptedData,只传了code,rawData,所以我一度以为拿不到union_id)。现在还有第二种方式,就算不更新前端,只要用户关联到公司到公众号,通过code一样可以获取到该用户的union_id。
open_gid这个确实在改了,希望能够顺利迁移过去,只是到B小程序open_gid肯定发生改变,用户的圈子信息应该全部需要重建,这个没办法的。
现在是前端没法更新,只向后台传了code,rawData,signature
不需要更新小程序前端,后端拿到 code 之后,再由后端去请求接口来获取 open_id 和 union_id 再进行存储
我刚用一个号关注了公司的公众号,并且该公众号也和小程序关联了(从公众号可以直接跳转到小程序)。但并没有返回unionid,只返回了open_id和session_key,为什么啊
接口:https://api.weixin.qq.com/sns/jscode2session
腾讯这个坑,查了一下,必须是先关注公众号,再授权进入小程序,才能获取到unionid。
先进入小程序,再关注公众号,就获取不到。
腾讯到处都是坑啊
这个是真的坑,我们第三方获取用户信息从uid改成unionid的时候,在修改日之前注册服务的会返回unionid和uid,之后的只会返回unionid
以前A一直能通过,然后突然就不能通过了吗?
对,以前一直能过,7月份以后突然不能过了,你说坑不坑! 一直没发更新
要命。。
希望你们能切实的解决问题,而不是来一句无关痛痒的话,微信挖的坑,难道让企业自己去承担?
有两种方式是解决这个问题最简单,影响用户最小的方法
1,想办法给审核通过,这个最简单(如果有特殊情况,给特殊处理一下)
2,给关联下两个小程序,同一用户登录AB两个小程序,返回的open_id open_gid都相同
真切的希望微信小程序团队那边给个解决办法,我在此先跪谢了