小程序登录并与公众号账号打通

原创 2018年04月16日 13:51:24

首先明确两个概念:

openid : 小程序用户唯一标识openid 

UnionID : 微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的unionid是唯一的

所以,如果我们只是小程序登录,我们需要获取“openid”作为用户的唯一标识,即普通登录,如果我们需要小程序用户既是公众号授权用户,

公众号用户也是小程序用户,即账号数据互通,我们就需要获取用户的“UnionID 作为用户的唯一标识了

普通登录流程图:


  1. 通过小程序开放接口wx.login获取code
  2. wx.request发起后台(我们自己的后台登录接口)登录请求,传入code
  3. 后台开发人员在我们的服务器端调用微信api,使用code换取openid和session_key
  4. 后台返回登录状态,登录成功

通用用户登录过程:

    这时我们需要使用UnionID 作为用户的唯一标识,UnionID 在wx.getUserInfo的返回参数encryptedData中,而且encryptedData因包含敏感信息,所以是加密数据。想要wx.getUserInfo返回encryptedData需要withCredentials 设置为 true 才行 ,而withCredentials 为 true需要先调用wx.login接口获取sessionkey,以用于encryptedData的解密。

所以登录流程如下所示。

  1. 通过小程序开放接口wx.login获取code
  2. 获取code后,将code通过服务器接口传入后台换取sessionkey与code
  3. 将sessionkey传入getUserInfo方法
  4. 在getUserInfo方法中调用小程序开放接口 wx.getUserInfo获取用户授权
  5. wx.getUserInfo方法设置参数withCredentials 为 true
  6. 若用户同意授权并授权成功,将encryptedData,sessionkey,iv通过开发者服务器接口传入后台,后台通过encryptedData的解密或UnionID 和用户信息,然后做用户数据处理并返回信息
  7. 将服务器返回信息通过 wx.setStorage存入本地缓存
  8. 若用户拒绝授权,调用showOpenSetting方法,弹出提示框提示用户接受授权,并点击确定时调用openSetting方法进入用户授权设置页
  9. 用户设置授权成功后重新调用login方法,若用户依然未设置授权继续弹出提示用户授权弹出框

同一主体下的公众号和小程序用户打通

     现在微信小程序十分火热,已经拥有公众号的商家想加入进来,同时实现公众号和小程序用户互通这个功能应该怎么做呢?    熟悉API的开发都知道这个应该是应该通过unionId来实现这一功能,因为...
  • DaiShoucheng
  • DaiShoucheng
  • 2018-04-04 17:38:43
  • 33

微信公众号与小程序数据互通

实现多公众号、小程序数据互动是管理多公众号业务的基本需求之一,因为通过多公众号数据互通可以更精确的分析用户来源和数据,并且提供更优质的服务,公众号结合小程序数据互通那么就可以实现多业务多入口。 ...
  • qq258513813
  • qq258513813
  • 2017-06-13 14:14:50
  • 4854

微信小程序与微信公众号同一用户登录问题

微信小程序与微信公众号同一用户登录问题 最近在做微信小程序与微信公众号登录合并的接口。整理相关资料以及个人认识的心得写了这篇文章与大家一起分享。 首先,简单说下我遇到的问题是我们的...
  • dingjianmin
  • dingjianmin
  • 2017-07-14 23:09:20
  • 14980

公众号网页授权,公众号用户登录

微信公众号网页授权, 很多微商城有需要用到这个功能, 一些学员说看网页授权的开发文档, 流程步骤很多, 实现起来总是出错… 其实说起来并不...
  • towtotow
  • towtotow
  • 2017-12-11 07:29:11
  • 6327

【微信小程序】No.1 注册属于你自己的微信小程序帐号

写在前面:今天是2017年1月9日,是微信小程序上线的日子,之前其实就一直很关注这个小程序,只是觉得还没到学习的时候,毕竟自己还有一些其他的学习任务,但是今天上线以后,感觉这个小程序确实很方便,所以打...
  • baofeidyz
  • baofeidyz
  • 2017-01-09 19:56:09
  • 1565

微信小程序与公众号卡券/会员打通

微信小程序与公众号卡券/会员打通卡券开发:带你走出小程序的坑 tips:由于笔者也是一位前端菜鸟,所以尽量用简单直白的语言为大家讲解,如有说的不到位的地方,还望多多指教 - 作为小程序的研发人员已...
  • ioth5
  • ioth5
  • 2017-06-27 18:34:15
  • 7827

微信公众平台 绑定微信用户OpenID与第三方业务账号

转自:
  • liuyuhua0066
  • liuyuhua0066
  • 2014-07-30 17:31:39
  • 14350

ThinkPHP 5.0开发微信小程序商场打通全栈项目架构

  • 2018年01月17日 09:35
  • 12KB
  • 下载

小程序支付绑定服务号支付步骤,微信小程序支付绑定商户号支付

很多学员向子恒老师咨询“小程序支付怎么绑定服务号支付” 因为微信服务号支付, 是微信商户号的一个支付功能, 他们以前开通过, 所以希望把这个利用起来, 跟小程序支付绑定, 今天子恒老师来跟你详细分享...
  • towtotow
  • towtotow
  • 2017-11-27 11:11:58
  • 519

小程序关注公众号的方法总结

因为很多小程序都想让小程序关注公众号,如何实现最优雅呢,作为一个搞技术的,经过我的研究,发现都是通过客服来显示的,小程序里,点客服,提示关注公众号,比如制作器里这个功能,能够自动引导关注公众号,图文体...
  • yaoohfox
  • yaoohfox
  • 2018-01-27 21:17:08
  • 3932
收藏助手
不良信息举报
您举报文章:小程序登录并与公众号账号打通
举报原因:
原因补充:

(最多只允许输入30个字)