问题描述

微信公众号网页授权登录,因为是前后端项目,所以跳转是在前端做的,所以回调地址配置的是前端页面地址,例如:xxx/callback?redirect_url=需要登录才能访问的页面地址,问题发生在需要登录才能访问的页面地址上,如果这个地址上有两个参数,例如xxxx?a=1&b=2,这时候有两个参数a和b,拼接到微信登录页面就是:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=xxx%2Fcallback%3Fredirect_url%3Dxxx%3Fa%3D1%26b%3D2&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect,用户授权后,回调到的地址参数为:
xxx/callback?redirect_url=xxxx%3Fa%3D1&b=2&code=CODE&state=STATE,发现原先回调地址的第二个参数作为回调地址的独立参数出现,而不是包含在redirect_url中,这样在回调页面中获取到的redirect_url值就会少了一个参数b,这样对于业务而言就不完整了。

问题解决方案

在回调的页面中,不直接获取redirect_url的值,而是通过window.location.href中去拆分拿到redirect_url=后的所有值,再去掉除微信加入的code和state参数,剩下的就是之前完整的redirect_url。
注:这个问题应该是微信公众号的一个bug

微信公众号前后端分离项目网页授权登录问题相关推荐

  1. php实现微信网页授权登录界面,微信公众号 前后端分离实现网页授权登录

    开发语言 后端:thinkphp5+easywechat3+php-jwt 前端:html 实现思路 需要授权登录页面,在页面加载完成时,判断是否登录,如果未登录访问后台授权登录链接 前端代码(主要j ...

  2. 微信公众号前后端分离授权登录

    前后端分离模式下微信授权登录 https://blog.csdn.net/qq_39524670/article/details/81118721?utm_medium=distribute.pc_r ...

  3. 点击微信公众号菜单按钮 跳转网页授权登录

    流程: 用户点击菜单按钮 -–> 发送页面授权请求到微信后台 -–> 得到 code 发送到 我们服务器后台的url -–> 将 code 参数发送到微信后台获取用户的openid返 ...

  4. 视频教程-微信公众号前后端项目视频教程-其他

    微信公众号前后端项目视频教程 张长志技术全才.擅长领域:区块链.大数据.Java等.10余年软件研发及企业培训经验,曾为多家大型企业提供企业内训如中石化,中国联通,中国移动等知名企业.拥有丰富的企业应 ...

  5. Node.js七天搞定微信公众号(又名:Koa2实现电影微信公众号前后端开发)- 问题汇总

    未完待续 视频资料在上一篇博客<Node.js七天搞定微信公众号(又名:Koa2实现电影微信公众号前后端开发)> 问题1:该公众号提供的服务出现故障,请稍后重试! 出处:<第4章 实 ...

  6. 微信公众号只能设置两个网页授权域名的解决方案

    考虑到有些萌新同学可能不太了解微信开发的流程,所以简单编辑下作为解释,以下代码只作为参考,开发中使用请自己修改好appid.中转站域名.回调地址.state状态码等 中转站 1.首先,用一个域名做中转 ...

  7. Koa2 实现微信公众号前后端开发

    123 课程目录: 第1章 课程介绍 了解学习课程的必要性,所包含的知识点,课程安排,学习前提,课程收获. 1-1 导学 第2章 第一天 - 准备工作 介绍微信公众号的基本知识与需要关心的流程,以及常 ...

  8. 2018最新Koa2实现微信公众号前后端开发视频教程

    课程目录: 第1章 课程介绍 了解学习课程的必要性,所包含的知识点,课程安排,学习前提,课程收获. 1-1 导学 第2章 第一天 - 准备工作 介绍微信公众号的基本知识与需要关心的流程,以及常见微信开 ...

  9. 微信公众号H5开发,实现网页授权(静默登录)

    文章目录 业务场景 具体实现 1. 配置微信后台 2. 上传校验文件 3. 网页静默授权 附:官方文档 业务场景 最近我司有个2C的需求,以分享链接的形式推广某线上活动, 要求一个链接覆盖微信.H5和 ...

最新文章

  1. SAP MM 不常用事务代码之MB59
  2. CSDN 插件限时内测,新用户抢永久免费去广告特权!
  3. 美团点评CTO罗道锋确认离职,新东家是快手?
  4. 初次见面,如何令人永远难忘
  5. eclipse在Windows7 64 位下出现Unhandled event loop exception No more handles
  6. java 动软_动软代码生成器下载_2017动软代码生成器下载及相关推荐 - noYes软件大全...
  7. C++Function Object Adapter之not1
  8. flv 视频 文件 下载
  9. 谈如何整定PID参数
  10. 计算机桌面软件乱跳怎么办,电脑桌面乱跳怎么办
  11. mysql 分区表max_mysql 分区
  12. 腾讯云通信、网易云通信、极光IM、阿里百川、容云通信国内云通信抉择之路 看云通信市场风云与掌控力 带腾讯云通信实战代码demo
  13. 物理单位与格子单位转换
  14. 【STUDY】工程数学
  15. 【傲腾观察室】英特尔® 傲腾™技术如何助力金融行业关键业务应用?
  16. bat脚本中pause的作用
  17. 电脑显示更改默认服务器如何选择,电脑设置服务器在哪里设置
  18. MFC CFileDialog使用
  19. android 流量的统计
  20. 【正一专栏】战长沙——血性尊严

热门文章

  1. [ENVI] 定量遥感实验-水体叶绿素浓度遥感反演 (超详细步骤)
  2. cass二次开发vba和lisp_选择AutoLISP还是VBA
  3. java+mysql基于SSM的大学生兼职信息系统#毕业设计
  4. TI原版方案 | 研旭YXDSP-XDS560V2PLUS仿真器 支持网口远程调试
  5. IT学不好没什么,大不了躺平
  6. SSL加速卡的使用,对HTTPS 七层负载机的性能提升
  7. Unity3D入门,compile error
  8. 从新浪微博搜索站点中超大批量爬取新浪微博内容方法和核心源码(java)
  9. 利用ms17-010 远程执行漏洞渗透Win7,并留下后门
  10. 看完你就明白:什么情况下该用int main(int argc, char *argv[])而不是int main(void)