当前位置:   article > 正文

springboot集成三方登录(微信)_springboot整合微信登录

springboot整合微信登录
准备工作

网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者账号,并拥有一个已审核通过的网站应用,并获得相应的AppID和AppSecret,申请微信登录且通过审核后,可开始接入流程。

1、在微信开放平台里面获取到登录连接(获取到对应的code值)

  1. <a href="https://open.weixin.qq.com/connect/qrconnect? appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_login&state=1#wechat_redirect">
  2. <i class="am-icon-weixin am-icon-sm"></i><span>微信登录</span>
  3. </a>
参数是否必须说明
appid应用唯一标识
redirect_uri请使用urlEncode对链接进行处理
response_type填code
scope应用授权作用域,拥有多个作用域用逗号(,)分隔,网页应用目前仅填写snsapi_login

 appid和redirect_uri对应的值需要你在微信开放平台里面注册开发者账号后并拥有一个已审核通过的网站应用 才会有对应的appid和redirect_uri

2、点击微信登录会弹出一个二维码 通过微信扫一扫进行登录 登录完成后他会通过你写的redirect_uri(回调地址) 调转到相应的页面上并会返回一个code值以及state值(地址栏中)

3、前端截取code值再将code值发送请求到后端 后端通过下面链接(需要传递code值、appid、secret)来获取到对应的token值以及openId

  1. //获取到code码 发送请求获取到token 令牌
  2. String url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=%s&secret=%s&code=%s&grant_type=authorization_code";
  3. String newUrl = String.format(url, APPID, SECRET, code);
  4. String tokenUrl = HttpUtil.get(newUrl);
  5. JSONObject jsonObject = JSONObject.parseObject(tokenUrl);
  6. String token = jsonObject.getString("access_token");
  7. String openId = jsonObject.getString("openid");
参数是否必须说明
appid应用唯一标识,在微信开放平台提交应用审核通过后获得
secret应用密钥AppSecret,在微信开放平台提交应用审核通过后获得
code填写第一步获取的code参数
grant_type填authorization_code

4、再根据所得到的token以及openId 通过一下链接 能够获取到对应的微信用户信息 并转换成Java的对象

  1. //获取微信用户信息
  2. //获取到token 在获取对应的用户信息
  3. String WX = "https://api.weixin.qq.com/sns/userinfo?access_token=%s&openid=%s";
  4. String WXUrl = String.format(WX, token, openId);
  5. String WXuser = HttpUtil.get(WXUrl);
  6. WXUserDto wxObj = JSONObject.parseObject(WXuser).toJavaObject(WXUserDto.class);

 

获取到微信用户信息(这里只获取了openId用户唯一标识符,nickname微信用户名,sex男女,headimgUrl  微信用户头像的地址 以及uinonid)

存入数据库完成!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/727352
推荐阅读
相关标签
  

闽ICP备14008679号