通过微信扫码登录网站

微信开放平台文档地址:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Authorized_Interface_Calling_UnionID.html

步骤:

一、在管理中心中创建应用,填写信息并等待审核完成。

二、获取到app中的 AppID 和AppSecret

三、获取微信登录二维码。

将app的AppID 和 想要跳转回的网址拼接到下面:
https://open.weixin.qq.com/connect/qrconnect?appid={appid}&redirect_uri={redirect_uri}&response_type=code&scope=snsapi_login&state=STATE#wechat_redirect
其中redirect_uri要经过url编码urlEncode,然后就可以在网页中打开这个链接,可以看到一个二维码。

使用微信扫描这个二维码,就会跳转回redirect_uri地址,并且后面添加参数https://xx.xxxxxxxxxx.cn/?code=081Oir591OoDfL1I0t291OkB591Oir5F&state=STATE
这里的code用来获取用户信息.

四、获取access_token和openid

可以使用第三步获取到的code来获取这两个参数,这两个参数可以获取微信用户的详细信息
https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code=081Oir591OoDfL1I0t291OkB591Oir5F&grant_type=authorization_code
结果如下:

{"access_token": “......",  //接口调用凭证"expires_in":7200,"refresh_token":"......","openid":"......", // 授权用户唯一标识"scope":"snsapi_login","unionid":"......"
}

一个code只能使用一次,再次调用结果:

{"errcode":40029,"errmsg":"invalid code, hints: [ req_id: LEMBIfyFe-O2AhuA ]"}

五、获取用户详细信息

如果只是标识用户唯一身份那么到第四步就可以了。再想获取用户信息,比如用户名,头像,可以往下获取:
https://api.weixin.qq.com/sns/userinfo?access_token={access_token}&openid={openid}

{"openid":"......","nickname":"......","sex":1,"language":"zh_CN","city":"Changchun","province":"Jilin","country":"CN","headimgurl":"......","privilege":[],"unionid":"......"
}

通过微信扫码登录网站流程相关推荐

  1. 微信扫码登录网站实现案例(无需授权)

    前言 最近因业务需要,需要给网站增加一个扫描公众号二维码登录网站的功能,通过扫码登录,一来用户登录网站不需再输入账号密码,提升了用户体验,二来也可以作为公众号吸粉的一个渠道. 开发准备 实现微信扫码登 ...

  2. 前端实现 微信扫码登录网站 pc端(二维码嵌套页面) 超详细,包会

    一.准备工作 本人申明:本案例使用到的appid和AppSecret都是无效的 appid:应用唯一标识,在微信开放平台提交应用审核通过后获得 AppSecret:在微信开放平台提交应用审核通过后获得 ...

  3. 微信扫码登录_JAVA

    一.需求 在PC端的登录页面加个微信扫码的按钮,点击按钮弹出二维码,实现微信扫码登录网站的功能.如图: 二.调研 扫码登录属于微信开放平台提供的API,不是微信公众平台.这里需要注册等配置,暂不赘述. ...

  4. 一篇文章,带你了解微信扫码登录

    文章目录 前言 一.功能背景 二.扫码登录原理 1.基本原理 三.实现效果图 1.登录页 2.点击微信账号登录 3.已绑定微信的账号 4.未绑定微信号的账号 四.代码实现 1.准备工作 2.编写代码 ...

  5. 【网课平台】Day10.对接第三方:实现微信扫码登录

    文章目录 一.需求:微信扫码登录 1.接口文档 2.开发环境准备 3.接入分析 4.接口定义 5.申请令牌 6.查询用户信息 7.保存用户信息 一.需求:微信扫码登录 (和第三方对接的流程) 1.接口 ...

  6. SpringSecurity OAuth2实现单点登录,微信扫码登录,Redis缓存验证码---入门到实战

    1. 认证授权 1.1 什么是认证授权 ​ 例如课程发布后用户通过在线学习页面点播视频进行学习.如何去记录学生的学习过程呢?要想掌握学生的学习情况就需要知道用户的身份信息,记录哪个用户在什么时间学习什 ...

  7. 内嵌式js微信扫码登录及自定义样式

    关于微信扫码登录网站的功能介绍,请阅读官方文档[网站应用微信登录开发指南] 根据官方文档我们知道微信扫码登录有两种方式 一种是跳转到一个大黑屏二维码界面进行扫码登录: (参见博客:PHP实现跳转式微信 ...

  8. 微信扫码登录超详细教程

    一.OAuth2 1.OAuth2介绍 2.OAuth2解决什么问题 (1)OAuth2提出的背景   照片拥有者想要在云冲印服务上打印照片,云冲印服务需要访问云存储服务上的资源.(2)图例   资源 ...

  9. PHP实现跳转式微信扫码登录网站

    关于微信扫码登录网站的功能介绍,请阅读官方文档[网站应用微信登录开发指南] 下面用PHP代码实现微信扫码登录网站(以官方文档中的一号店为例): <?php header("Conten ...

最新文章

  1. 异常处理 课后作业2
  2. 在C#中,如何连接已加密的Sqlite数据库
  3. 链表--只知道当前节点指针删除当前节点
  4. php聊天功能_php实现简单聊天功能
  5. 经典排序算法 - 冒泡排序Bubble sort
  6. java 多态_Java面向对象 —— 多态
  7. “开发人”注意了!百度AI快车道成都站:来了就不想走的活动
  8. python微信自动回复
  9. Winform GDI+
  10. Looksery Cup 2015 B. Looksery Party 暴力
  11. Pr 2021快速入门教程,如何新建项目及首选项的基础设置?
  12. goahead如何使用cgi服务_利用GoAhead构建嵌入式web应用
  13. 【C++】error: passing ‘const xxx’ as ‘this’ argument discards qualifiers [-fpermissive]
  14. 贯头山酒——中华酒文化的源头之一
  15. 华三路由器RIP协议详细配置
  16. ubuntu壁纸自动切换
  17. java+上传一个文件夹
  18. 虾神段子小剧场:人人都该学点数据分析(1):达五十万的电竞人才缺口?
  19. 创建系统映像时包含了 D、E 盘
  20. js的变量命名需要遵循什么规则?

热门文章

  1. mysql汉字的拼音排序
  2. 2023考研资料每日更新(2022.04.14)
  3. 2019中国农业大学计算机考研经验贴
  4. 程序交易程序打板的思路分享
  5. 练习——模拟真实双色球规则写彩票循环2
  6. 学校智慧校园计算机房介绍,资阳雁江区三年打造全区智慧校园,智慧机房比肩并起...
  7. waterdrop启动报错
  8. 硕士到博士一路走来的科研感悟
  9. Python读取Excel单元格的内容
  10. Tekla钢结构檩条自动标注