笔记
7、授权登录获取微信用户个人信息实战
简介:讲解使用授权码code获取用户个人信息接口
关键点:看微信文档,字段尽量用拷贝
1、通过code获取access_token
文档:
https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316505&token=7e1296c8174816ac988643825ae16f25d8c7e781&lang=zh_CN
2、通过access_token获取微信用户头像和昵称等基本信息
文档:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419316518&token=7e1296c8174816ac988643825ae16f25d8c7e781&lang=zh_CN
开始
开发微信扫一扫登陆
code的值是必须的
打印code和state
配置文件内确认地址
在这里加断点调试
启动ngrock
通过这个域名地址拿到扫描的地址
把地址复制出来在浏览器中打开
手机扫码并确认登陆,微信回调本地。断点就进来了
code和state的值就都有了。这就证明,我们把参数拿到了
第二步
通过上面拿到的code去获取access_token
新建接口类UserService
实现类
配置文件内定义变量,或者Access_Token的地址,里面的参数用s%做为替换符,生成getter和setter的方法
静态的属性直接去获取,不用在导读去注入webChartConfig
AppId,AppSceret、code这三个参数。
文档内,请求最终返回的结果如下:
controller里面调用这个Service
拿到二维码的地址
扫码进行登陆
扫描成功
回调到断点这里
baseMap的值
这样就拿到了accessToken和openId
登陆后获取用户的信息
把这个url地址复制到配置文件类里面。关键字用%s来代替
然后给这个url变量生成getter和setter方法
调用get请求,传入对应的参数,获取最红用户的信息
启动测试,扫描登陆,进去断点
nickName这里有个乱码