写在前面,这里的微信授权登录,要求:在微信授权后登录之前必须补充手机号码,即绑定手机号码,这与平常的微信授权登录成功以后再到设置中进行手机号码绑定有一些差别。

同时,这里还区别了APP端和PC端的处理,APP端和PC端的处理区别在于从微信获取授权的方式不同而已。

微信官方文档地址:微信官方文档 | 微信开放文档

这里选择开放平台这里我们关注【移动应用】和【网站应用 】,分别对应这移动端和PC网站。

这里拿PC网站举例:

整体的思路就是:

1,向微信申请授权获取code

2,使用code去获取access_token

3,刷新access_token,如果有必要

4,获取用户信息

5,检查access_token是否有效

获取access_token时序图:

首先需要登录微信开放平台:微信开放平台

需要在这里创建移动应该和网站应用,因为要在这里获取到关键的微信授权配置信息appID和appsecret。

第一步:请求CODE

第三方使用网站应用授权登录前请注意已获取相应网页授权作用域(scope=snsapi_login),则可以通过在PC端打开以下链接: https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect 若提示“该链接无法访问”,请检查参数是否填写错误,如redirect_uri的域名与审核时填写的授权域名不一致或scope不为snsapi_login。

返回说明

用户允许授权后,将会重定向到redirect_uri的网址上,并且带上code和state参数

redirect_uri?code=CODE&state=STATE

若用户禁止授权,则不会发生重定向。

第二步:通过code获取access_token

通过code获取access_token

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

返回说明

正确的返回:

{
"access_token":"ACCESS_TOKEN",
"expires_in":7200,
"refresh_token":"REFRESH_TOKEN",
"openid":"OPENID",
"scope":"SCOPE",
"unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL"
}

Java版本微信授权登录(概览版)相关推荐

  1. Java版本微信授权登录(测试版)

    这篇文章是对微信授权登录的一个测试版本,并不能直接在生产上使用,对于在生产上正式使用将会在下一篇中描述. 一,首先需要以下两个数据 appID和appsecret 如何获取这两个数据,请先登录微信公众 ...

  2. Java版本微信授权登录(升级版)

    前面写了一遍文章<Java版本微信授权登录(测试版)>,可以当做入门的基础文章,这里继续做一点深入,主要解决的是,如何在本地开发中微信授权以后跳转到本地启动的项目中. 我们知道了微信公众平 ...

  3. 微信授权登录(java实现)

    微信公众平台开发文档 微信授权登录获取用户信息有2种方式: 1.静默授权获取用户信息. 2.非静默授权弹出授权界面,用户确认之后获取用户信息(这种方法能够获取到更多信息). 开发前准备: 1.获取到A ...

  4. java如何实现微信授权登录

    要在 Java 中实现微信授权登录,需要按照以下步骤操作: 在微信开放平台(https://open.weixin.qq.com/)申请微信登录的第三方平台资格,并获取相应的 AppID 和 AppS ...

  5. android友盟微信授权登录清除,【转载】Android友盟SDK微信授权登录接入

    微信授权登录接入需要先到微信开放平台申请好应用的APPID,交纳300大洋费用得到授权登录权限后才能使用,此处不再赘述. 接入的两种方式 -- 微信SDK接入:使用微信官方SDK接入,需要分" ...

  6. 硅谷课堂 12_公众号消息和微信授权登录

    硅谷课堂第十二天-公众号消息和微信授权登录 文章目录 硅谷课堂第十二天-公众号消息和微信授权登录 一.公众号普通消息 1.实现目标 2.消息接入 2.1.公众号服务器配置 2.2.验证来自微信服务器消 ...

  7. 新课重磅发布-Java开发微信朋友圈PC版系统(架构2.0+分布式中间件)

    继"Java开发微信朋友圈PC版系统-架构1.0" 课程之后,debug这段时间日撸夜撸,终于赶在春节放假前给诸位带来了这一系统的架构2.0版本,特此分享给诸位进行学习,以掌握.巩 ...

  8. 慕课网_《微信授权登录》学习总结

    时间:2017年08月12日星期六 说明:本文部分内容均来自慕课网.@慕课网:http://www.imooc.com 教学源码:无 学习源码:https://github.com/zccodere/ ...

  9. ios微信登录不上服务器,iOS微信授权登录

    首先需要确保你的App应用在微信开发平台上注册创建并获得对应的接口,对应登录.支付等功能还涉及付费,具体申请流程就不再这里说了.到开放平台->管理中心->移动应用->查看应用,确认你 ...

  10. 微信授权登录(微信订阅号使用测试账号)

    1.微信授权登录: 微信公众号测试登录: 准备: 1.1 花生壳! 下载地址:http://hsk.oray.com/download/ 1.2 微信公众号:https://mp.weixin.qq. ...

最新文章

  1. jQuery的$.fn使用
  2. oracle字段求和_oracle大纲
  3. c++变量重新赋值_Java基础二:一文讲透变量与数据类型
  4. django-rest-framework第一次使用使用常见问题
  5. 2015新东方计算机,2015年同等学力计算机综合模拟(2)
  6. 浙江大学生计算机竞赛,浙江省第十二届大学生程序设计竞赛成功举行
  7. 实时仪表板的Postgres通知
  8. mysql根用户的密码是什么_Mysql忘记根用户密码 怎么办?
  9. chrome浏览器 提示Adobe Flash Player未安装的解决方法
  10. 存储可向外扩展无线传输
  11. 单(两)个正态总体的统计量的分布相关定理
  12. 谷歌账号Gmail邮箱修改密码提示需要手机设备验证码如何处理
  13. python学习笔记(汇率兑换)
  14. Python爬虫实战——今日头条图片下载
  15. 微生物群落的circos图怎么画_微生物群落分析
  16. MultiMC的离线模式启动
  17. 【BirdDog】 Full NDI在体育/电竞直播中的降成本、轻量化、多机位现场制作
  18. 多年的人工智能安全机制争议 检察官、行刑者与道德家这么表示
  19. 魔众EDM邮件营销系统 v1.0.0 专业的EDM邮件营销系统
  20. 给查询出的SQL语句加序号

热门文章

  1. SpatialDB |单细胞空间转录组数据分析可视化平台
  2. 微云存储空间多大_qq微云内存多大
  3. 最新电脑版微信操作频繁解决办法
  4. mysql case when in_MySQL case when 使用
  5. Android Studio快速开发之道
  6. 安装webpack上
  7. Word 内容被锁定的两种解决方法
  8. C语言求n的阶乘(n!)
  9. 抖音视频解析PHP源码
  10. OpenCV图像阈值:简单阈值、自适应阈值、OTSU、TRIANGLE