登录授权获取openid

过程:

通过appid以及一些其他参数拼接微信公众号的登录授权链接,通过所填写的回调地址会返回一个code参数回来,通过code向后台发起请求获取openid,此code只能使用一次,即获取一次openid后该code作废,获取的openid相当于token,需要缓存(storage)

  data () {return {// 填写你的appidappid: '....',}},methods: {// 获取codegetWxCode () {// 判断当前url是否有code返回let noCode = window.location.href.indexOf('code=') === -1;// 如果没带code参数说明刚打开此页面需要登录授权if(noCode){// code回调地址let redirect_uri = location.origin + location.pathname;// 跳转到微信登录授权,各个参数的作用可以去微信公众平台查window.location.href=`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${this.appid}&redirect_uri=${redirect_uri}&response_type=code&scope=snsapi_userinfo&#wechat_redirect`;}//如果带code参数说明登录授权成功取出code传给后台后去openidelse {let code = location.href.split('code=')[1].split('&')[0];this.getOpenid(code);}},getOpenid (code) {// 将code传给后台获取openid....} }

过程假设 :

当前登录授权页面路由为 https://www.a.com/#/login

假设微信回调code为123456

将路由设置成访问/自动访问到/login下

回调结果:

通过以上假设,则当访问https://www.a.com/#/login时,回调跳转最终结果会到https://www.a.com下,其url地址为https://www.a.com?code=123456,由于路由设置成访问/自动访问到/login下,所以会回到当前授权页面下,则地址为https://www.a.com?code=123456/#/login,此时说明code参数已经在当前路由url下,将其取出传给后台获取openid,将openid缓存,则登录授权完成

微信移动端开发 - 账号登录授权相关推荐

  1. 微信pc端网站应用扫码授权登录

    这是官方的文档 对接之前至少要先看下流程图 效果:用户点击微信登录跳出一个二维码,用户扫码授权后登录进去 1. 2. 需要做的事情 1.需要在微信开放平台上面注册账号,并认证企业,创建网站应用 2.认 ...

  2. 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等

    今天2.19.3.25 在开发微信小程序时,作为测试号想清除授权缓存,一直没有找到方法, 最后无意中看到了解决方法 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等.完美解决

  3. 微信小程token_微信小程序开发之登录换取token

    本文将带你了解微信小程序开发之登录换取token,希望本文对大家学微信有所帮助 前言:这次主要是介绍些业务逻辑,技术点倒是没有多少.不过在开发中,优秀的编程思路同样是非常值得学习的. 最近小程序可以说 ...

  4. 微信服务号开发时获取授权遇到的问题

    1.问题 (遇到的问题)微信服务号开发时获取授权遇到的问题 公众平台返回原始数据为: 错误代码-40164,错误信息-invalid ip, not in whitelist hint: [59FKq ...

  5. 微信小程序如何进行登录授权和获取用户信息

    微信小程序如何进行登录授权和获取用户信息

  6. 微信公众号开发Django-网页授权

    原文链接 对于基础的微信公众号开发,网页授权,JSSDK,图片处理应该是最重要的三部分了 根本上也是按照文档开发,技术含量并不高. (选Django=很多权限控制模块已经做好了,比较省力) 在开始之前 ...

  7. ASP.NET MVC4 微信公众号开发之网页授权(一):搭建基础环境

    首先你得注册并认证一个个人或企业的微信公众号===服务号从而确保获得以下接口权限: 然后打开公众号设置里的功能设置里找到业务域名和网页授权域名分别填上你的域名(注:已备案的域名),如下图所示: 到这里 ...

  8. 通过微信公众号实现H5登录授权

    通过微信公众号实现H5登录授权 一.相关配置 1.配置参数测试公众平台信息(测试号相关配置示例) 2.配置JS接口安全域名 3.扫码关注公众号 4.添加网页授权地址 这里是指微信授权回调页面,同时发现 ...

  9. 微信服务端开发必备技能——内网穿透

    前言    我们在做微信服务端开发的时候,经常会碰到需要调试,但是微信回调必须要外网环境,这时候只能打到服务器上了:那有没有什么办法是可以直接在本地调试呢?内网穿透可以让我们在本地进行调试. 什么是内 ...

最新文章

  1. 用于目标检测的半自动视频标注
  2. MPMoviePlayerController 电影播放器
  3. linux系统——fread()与read()函数族区别
  4. 【转】3:C#异步WaitAll的使用
  5. 本地运行hadoop-Failed to locate the winutils binary in the hadoop binary path
  6. plc tcp ip通讯怎么只能连一个客户端_如何远程读取西门子PLC数据?
  7. 零基础带你学习计算机网络复习—(五)
  8. 图数据库 graph_通过SQL Server中的自连接了解Graph数据库相对于关系数据库的好处
  9. springsecurity原理执行流程_3. Spark原理-执行流程解析
  10. python必背代码-Python一些实用代码
  11. wps将批量数字转换成条形码_wps批量形成条码
  12. jar包启动调用外系统文件上传,无法生成文件,报org.springframework.web.client. ResourceAccessException: I/0 error on POST
  13. 清北学堂2019.7.16
  14. 【红米刷机】红米手机卡刷稳定版教程
  15. 模拟登录学校教务系统网站
  16. flutter 键盘挡住输入框问题
  17. 2023-05-29 用 fltk gui库编写一个打字练习程序
  18. 告别被拒,如何提升iOS审核通过率(上篇)
  19. Idaily 知乎日报APP
  20. 【语音录制+识别】一、音频相关

热门文章

  1. *******系统监控技术选型
  2. 【Leetcode】312. Burst Balloons
  3. lol12月25服务器维护,LOL12月25日更新到几点 LOL8.24B更新维护公告
  4. php跳出微信默认浏览器打开网页,求助,跳出微信内置浏览器直接到默认浏览器代码...
  5. IDC:容器新势力,市场新动力
  6. 无监督学习 | GMM 高斯混合聚类原理及Sklearn实现
  7. XMLHttpRequest: 网络错误 0x80700013的解决方案
  8. 【洛谷月赛】洛谷11月月赛·Day1
  9. 错误:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server vers
  10. Spring5从零单排学习笔记【非常详细】