回归PHP(一)——微信接入获取用户信息

最近在做公司的微信接入部分。目前接入部分代码已经由别人写好,但是还有很多问题。经过几天痛苦的看文档和代码,整理一下接入流程,大致相当于微信官方文档的扩展版本。附上官网文档链接

微信登录接入分为两种,一种是只需要用户openid,另一种是需要用户昵称和头像等乱七八糟的另一些信息。第一种可以不经过授权,如果用户已经关注该公众号,则该公众号的回调链接可以直接获取到用户openid。第二种无论是否关注公众号,都必须经过授权,也就是一个页面带绿色大按钮那种,官方文档有图。但是第二种接入,也必须先走完第一种接入流程。

只获取openid的接入

服务号获得高级接口后,默认拥有scope参数中的snsapi_base和snsapi_userinfo,这是官网文档的说法。获取的链接为:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
appid和回调链接不用多说,state是一个可选参数,唯一需要重视的就是scope这个参数。选snsapi_base,能够获取到openid,这个可以用作唯一用户id使用。如果不需要用户昵称,让用户后续自行设置,那么到此为止就可以了。

获取用户昵称的接入

走完第一步以后,可以获取到openid同时可以获取到一个access_token,这个token专门用来获取用户其他信息。但是,重点来了,想获取用户其他信息,第一步使用的scope参数,必须是snsapi_userinfo。第一步获取完信息以后,用access_token做参数,去https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN这个链接里,调用一次get函数,从返回值里就可以取到用户数据了。

如果有什么遗漏错误欢迎在下面留言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值