UnionID机制说明
如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过unionid来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的unionid是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。

我们系统都做了移动应用、网站应用、和公众帐号的微信登入,我们后端这边是有微信绑定账号功能的。所以需要在微信的给出的用户唯一的unionID判断该用户是否已绑定微信号。

微信小程序API详情的官方链接: https://developers.weixin.qq.com/miniprogram/dev/api/api-login.html#wxloginobject

微信官方的流程图:

前端调用wx.login获取code,然后将code返回给后台拿着code与appid,secret访问微信接口获取session_key、openid和 unionId

看一下拿code请求成功后,微信官方给出的返回结果:

我当时返回的结果就是不满足UnionID情况下的、此处我黑人问号三连???

再看看微信官方给出的解释、怎么才能满足UnionID的情况呢?

所以我就让前端同事改逻辑,前端需要调用完wx.login函数后获得code、紧接着前端再调用wx.authorize函数让用户授权同意再将刚刚调用完wx.login获取到的code请求后端接口(前端的这里调用函数貌似是有顺序的 wx.login ----> wx.authorize)

然后............................

还是只返回了session_key、openid  还是没有UnionID !!!!!麻蛋!

划重点、检查微信开放平台的管理中心的小程序是否添加绑定:
开发资质未认证的话,需要申请开发者资质认证(需要交资料and费用)

认证通过后、去管理中心、小程序、绑定小程序(小程序登入账号就是微信公众号的账号and密码)

绑定好后、再次访问小程序接口、就可以获取到UnionID了

------------------------------------------------------------------------性感分割线-------------------------------------------------------------------------------

微信小程序无法获取到unionId(专业踩坑20年)的更多相关文章

  1. 微信小程序如何获取openid

    微信小程序如何获取openid wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId // ...

  2. 微信小程序验证码获取倒计时

    wxml <button disabled='{{disabled}}' bindtap="goGetCode">{{code}}</button> js ...

  3. 微信小程序后台获取用户的opeid

    1.微信小程序后台获取登录用户的openid,首先微信小程序将code传给后台服务器 wx.login({ success: function (res) { var code = res.code ...

  4. 【微信小程序】获取用户地理位置权限,二次请求授权,逆解析获取地址

    摘要:微信小程序内获取用户地理位置信息授权,被拒绝后二次获取,获取权限后逆解析得到用户所在省市区等.. 场景:商城类小程序,在首页时需展示附近门店,即用户刚进入小程序时就需要获取到用户位置信息 ste ...

  5. 微信小程序,获取二维码

    微信小程序,获取二维码 找到一篇很实用的博客,他已经写得很详细了,自己也懒得写,亲测有效 参考网址

  6. nodejs+koa+uniapp实现微信小程序登陆获取用户手机号及openId

    nodejs+koa+uniapp实现微信小程序登陆获取用户手机号及openId 前言: 我准备用nodejs+koa+uniapp实现一款餐饮点单小程序,以及nodejs+koa+vue实现后端管理 ...

  7. 微信小程序全面实战,架构设计 && 躲坑攻略(小程序入门捷径教程)

    最近集中开发了两款微信小程序,分别是好奇心日历(每天一条辞典+一个小投票)和好奇心日报(轻量版),直接上图: Paste_Image.png 本文将结合具体的实战经验,主要介绍微信小程序的基础知识.开 ...

  8. 微信小程序无法获取UnionId的情况及处理

    问题背景:做了微信小程序,一切都还正常,但是最后体验版放出去时,却发现很多用户无法绑定用户,后台返回:参数非法.经过多方排查,发现是微信拿到的code请求返回的数据里没有UnionId,也就是接口返回 ...

  9. 微信小程序实例-获取当前的地理位置、速度

    微信小程序官方文档 https://mp.weixin.qq.com/debug/wxadoc/dev/api/location.html JS代码 //index.js //获取应用实例 var a ...

随机推荐

  1. Kubernetes v1.16 对API的更改

    前段时间安装Kubernetes v1.16.2,然后从v1.14版本的拷贝yaml文件过来执行,很多都报没有相应的api,查看一下新版本的api admissionregistration.k8s. ...

  2. Kali Linux下运行nfc工具测试!

    由于Kali本身就集成了很多nfc工具,用起来很方便,再加上一个acr122u读卡器,来尝试PJ学校水卡! 首先安装驱动,到龙杰官网下载Linux的,解压后进入自己Linux发行版,Kali的是Deb ...

  3. PHP的Session机制解析 1

    一.php的默认session机制 php默认用磁盘文件来实现session在php.ini中session.save_handler = files定义session机制session.save_p ...

  4. Linux环境下Eclipse对C++新特性的支持设置

    Linux环境下Eclipse对C++新特性的支持设置     今天写一个简单的关于C11中的array容器的测试程序如下, #include <iostream> #include &l ...

  5. 框架-.Net:.NET框架

    ylbtech-框架-.Net:.NET框架 .NET框架(.NET Framework) 是由微软开发,一个致力于敏捷软件开发(Agile softwaredevelopment).快速应用开发(R ...

  6. MySQL高级学习笔记(五):查询截取分析

    文章目录 慢查询日志 是什么 怎么玩 说明 查看是否开启及如何开启 默认 开启 那么开启了慢查询日志后,什么样的SQL才会记录到慢查询日志里面呢? Case 配置版 日志分析工具mysqldumpsl ...

  7. 查看mysql慢日志,进行优化

    MySQL 慢查询的相关参数解释:slow_query_log :是否开启慢查询日志,1表示开启,0表示关闭. slow_query_log    :是否开启慢查询日志,1表示开启,0表示关闭. lo ...

  8. Tika教程

    Apache Tika 是什么? Apache Tika用于文件类型检测和从各种格式的文件内容提取的库. 在内部,Tika使用现有的各种文件解析器和文档类型的检测技术来检测和提取数据. 使用Tika, ...

  9. leetcode.数组.565数组嵌套-Java

    1. 具体题目 索引从0开始长度为N的数组A,包含0到N - 1的所有整数.找到并返回最大的集合S,S[i] = {A[i], A[A[i]], A[A[A[i]]], ... }且遵守以下的规则.假 ...

  10. oracle数据库 唯一约束的创建与删除

    1.创建索引: alter table TVEHICLE add constraint CHECK_ONLY unique (CNUMBERPLATE, CVIN, CPLATETYPE, DWQCH ...