小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-7.授权登录获取微信用户个人信息实战

笔记


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这里有个乱码




 

posted @ 2019-09-08 11:15  高山-景行  阅读(328)  评论(0编辑  收藏  举报