微信授权登陆步骤(微信客户端内)
伙伴们一起做了Javaweb小项目,微信登录授权模块是我负责,给大家普及后顺便发到这里,如果有不足的地方欢迎提出!
进入项目任意页面
进入项目任意页面,后台首先会判断该用户是否登录。
若没有登录(即session中没有用户信息)并且以下两种情况任意一个时
1. 首次进入该公众号
2. 授权过期
就进入以下授权页面。
第一步:用户同意授权,获取code
页面显示一个让用户点击的微信url,让用户点击
当点击确认授权后,自动跳入后台写好的url,获取到code
code作为换取access_token的票据,每次用户授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期。
第二步:通过code获取网页授权access_token
然后后台逻辑再次请求微信的url并拼接code参数,该请求所返回的json串里含有access_token(接口调用凭证)以及openId(用户与此公众号的唯一标识)。
access_token有7天有效期。当access_token超时后,可以使用refresh_token进行刷新,refresh_token有效期为30天,当refresh_token失效之后,需要用户重新授权。
openId是用户与此公众号的唯一标识,永远唯一且不过期
第三步:通过access_token和openId获取用户信息
后台逻辑再次访问微信url并拼接两个参数,成功会返回下面的包含用户信息的json串,将用户信息存入数据库方便以后使用
第四步进入主页
完成以上授权,获取到用户信息后,标记该请求为已登录状态(即将用户信息放入session),后台逻辑跳入主页
授权登陆就此完成。
有兴趣继续看
这次授权了后,以后再次进入该项目,就从cookie中获取openId,就不用经过步骤一了(清空了cookie?那就再次授权咯),然后根据openid直接从数据库查到用户信息并标记该请求为已登录状态就可以了
附录:微信官方文档原文:
上面写的简略。如果你很爱学习很渴望力量,具体实现点链接:
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
如果有不足的地方欢迎提出!
微信授权登陆步骤(微信客户端内)相关推荐
- 微信授权登陆接入第三方App(步骤总结)Android。
这几天开发要用到微信授权的功能,所以就研究了一下.可是微信开放平台接入指南里有几个地方写的不清不楚.在此总结一下,以便需要的人. 很多微信公众平台的应用如果移植到app上的话就需要微信授权登陆了. 目 ...
- 微信授权登陆接入第三方App(步骤总结)Android
微信授权登陆接入第三方App(步骤总结) 这几天开发要用到微信授权的功能,所以就研究了一下.可是微信开放平台接入指南里有几个地方写的不清不楚.在此总结一下,以便需要的人. 很多微信公众平台的应用如果移 ...
- 微信授权登陆介入第三方APP
这几天开发要用到微信授权的功能,所以就研究了一下.可是微信开放平台接入指南里有几个地方写的不清不楚.在此总结一下,以便需要的人. 很多微信公众平台的应用如果移植到app上的话就需要微信授权登陆了. 目 ...
- 微信h5登录php,vue实现微信授权登录步骤详解
这次给大家带来vue实现微信授权登录步骤详解,vue实现微信授权登录的注意事项有哪些,下面就是实战案例,一起来看一下. 背景 vue前后端分离开发微信授权 场景 app将商品分享到微信朋友圈或者分享给 ...
- web pc端 微信授权登陆 实例详解
首先,看看微信官方文档,了解一下具体实现步骤 微信官方文档: 微信登陆开发指南 基本了解了微信登陆的流程后,然后我们再来一起踩坑 1.先去微信公众平台申请网站,appId,设置域名 2.调用微信地址生 ...
- uniapp微信公众号微信授权登陆实现
正常不需要支付的项目一般不需要做微信授权登陆,有业务需要的可以加,我这边项目中使用了微信支付功能所以需要搞个微信授权登陆 进入到登陆页面首先要执行 onLoad(options) {if (optio ...
- 微信授权登陆【yixiyun】
1,引入相关依赖(主要是最后一个) <dependency><groupId>com.github.binarywang</groupId><artifact ...
- 如何实现自有App上的小程序第三方微信授权登陆?
对于微信小程序来说,有 OpenID 或 UnionID 作为唯一标识,微信授权登陆小程序账号是很容易实现的,但对于其他应用上的小程序来说(如支付宝.百度等),打通该登陆方式是比较麻烦的. 之前在Fi ...
- java 实现微信授权登陆
附官方文档地址:小程序登陆 | 微信开放文档 编码前准备工作:开发之前我们需要准备两个东西AppID和AppSecret,需要到微信开放平台(https://open.weixin.qq.com)注册 ...
最新文章
- JQuery 动态创建表单,并自动提交
- 写给程序员的 18 幅对联,你能看懂几个?
- 前端性能优化——从 10 多秒到 1.05 秒
- tomcat优化设置
- 关于 DOM 操作的几个类型
- AngularJS实战之Controller之间的通信
- 【C++grammar】继承与构造test1代码附录
- 爱奇艺漫威等系列电影因版权到期下架 会员无补偿
- Hutool 工具类
- 海园帮忙写的JQUERY功能,实现了我们想要的,我觉得有点屌哟~~
- Windows Server 2012 虚拟化实战:网络(一)
- 基于BP神经网络识别手写字体MINST字符集
- Mac OS系统下,代码自动生成器无法使用解决方法
- win10 截屏方法
- python读取excel的路径
- 【八月英语----照亮我心】
- STM32F103驱动IIC OLED显示屏
- 百度地图API详解之地图标注
- 蓝桥杯官网python组基础练习-入门01-04
- 4数据结构与算法(C/C++实现)视频教程-王桂林-专题视频课程
热门文章
- 是华为所有手机都升级鸿蒙吗,华为手机全部型号,你的手机能升级吗?华为正式官宣:鸿蒙来了...
- ThingsPanel物联网平台添加萤石云摄像头视频播放地址
- 巅峰战舰服务器维护多久,巅峰战舰更新不断 死斗模式玩法解析
- Visual Studio Enterprise 2019序列号
- 教妹学Java:48 个关键字
- 双11,美的、格力们又盯上了厨房小家电
- タイ国内線空港 浸水被害拡大
- 零时科技|2021年,你应该了解的区块链安全
- 4-ChromeOptions Desiredcapabilities: AdBlocker, Incognito, Headless
- 利用jslint对javascript开展语法校验