100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 微信公众号开发__微信网页授权并获取用户基本信息(是否关注公众号 头像 昵称等)

微信公众号开发__微信网页授权并获取用户基本信息(是否关注公众号 头像 昵称等)

时间:2019-04-08 08:45:50

相关推荐

微信公众号开发__微信网页授权并获取用户基本信息(是否关注公众号 头像 昵称等)

本人最近要做微信公众号网页开发的项目,其中有个需求是判断用户是否关注公众号,由于之前没有接触过微信授权的东西,所以提前开始做调研。在度娘上看了好多博客、百度知道、百度经验、知乎问答等,还仔细阅读了微信公众平台开发文档,大致了解到:

微信网页授权分两种,第一种是snsapi_base(静默授权,用户无感知),第二种是snsapi_userinfo(第一次授权需要用户点击登录确认)。静默授权只需要两步就能拿到开发者需要的openID,而第二种授权方式,一共需要四步,可以拉取到用户信息(昵称、头像等)。具体过程这里不在赘述,参阅微信开发者文档。

但是,本人发现一个不好的事情,获取到的用户信息里,并没有度娘告诉我的用于判断用户是否关注公众号的字段 subscribe 。然后,继续查阅博客、百度知道、百度经验、知乎问答,其中,有一篇博客让我如获至宝,下面是博客的截图:

然后我就天真的相信,只有在unionID机制下,获取到的用户信息里才会有subscribe 字段。后来,查看微信公众平台开发文档,其中有一段:

那么,只有把公众号绑定到微信开放平台上才能使用unionID机制。所以自己就注册了一个微信开放平台,要绑定公众号的时候发现,只有完成开发者资质认证才能绑定。但是认证需要:

以上只是一部分。这哪儿是我一个开发能做的事儿啊,所以向项目经理说明了情况,又向技术中心老大申请……,经过了一系列繁杂又不太顺利的流程。最后,让我来注册,需要什么材料找行政要。

当然,在协调的过程中,我也没闲着,咨询了做过微信网页授权的同事,自己也继续翻阅微信开发文档(相当烂)、在本地尝试授权,获取用户信息,最终发现:不需要unionID机制,也能获取用户基本信息,拿到subscribe 字段。那么正题来了!

微信网页授权并获取用户基本信息(是否关注公众号、头像、昵称等)步骤:

1、用户同意授权,获取code(使用静默授权即可)

参阅 微信网页授权 第一步

2、通过code换取 网页授权access_token 和 openID(此处的access_token为网页授权过程专用)

参阅微信网页授权第二步

3、使用AppId和AppSecret:获取access_token

参阅 获取access_token

4、使用openID和access_token获取用户基本信息

参阅获取用户基本信息(包括UnionID机制)

最终获取到的用户基本信息如下图:

好了,到这里终于拿到了我需要的判断用户是否关注公众号的字段:subscribe 。

饶了这么大圈子,有些感触:微信公众平台开发文档不容易看懂,unionID机制到底是啥,绑定了开放平台才叫unionID机制吗,那我现在这种调接口的方法(并没有绑定微信开放平台)属于unionID机制吗。

再多说一句,其实这些逻辑,绝大部分是在后端完成的(access_token、appsecret安全等级都比较高)。所以,作为前端,只要调接口==》回调地址,再调接口==》得到用户基本信息。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。