微信公众号前后端分离项目网页授权登录问题
问题描述
微信公众号网页授权登录,因为是前后端项目,所以跳转是在前端做的,所以回调地址配置的是前端页面地址,例如: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
微信公众号前后端分离项目网页授权登录问题相关推荐
- php实现微信网页授权登录界面,微信公众号 前后端分离实现网页授权登录
开发语言 后端:thinkphp5+easywechat3+php-jwt 前端:html 实现思路 需要授权登录页面,在页面加载完成时,判断是否登录,如果未登录访问后台授权登录链接 前端代码(主要j ...
- 微信公众号前后端分离授权登录
前后端分离模式下微信授权登录 https://blog.csdn.net/qq_39524670/article/details/81118721?utm_medium=distribute.pc_r ...
- 点击微信公众号菜单按钮 跳转网页授权登录
流程: 用户点击菜单按钮 -–> 发送页面授权请求到微信后台 -–> 得到 code 发送到 我们服务器后台的url -–> 将 code 参数发送到微信后台获取用户的openid返 ...
- 视频教程-微信公众号前后端项目视频教程-其他
微信公众号前后端项目视频教程 张长志技术全才.擅长领域:区块链.大数据.Java等.10余年软件研发及企业培训经验,曾为多家大型企业提供企业内训如中石化,中国联通,中国移动等知名企业.拥有丰富的企业应 ...
- Node.js七天搞定微信公众号(又名:Koa2实现电影微信公众号前后端开发)- 问题汇总
未完待续 视频资料在上一篇博客<Node.js七天搞定微信公众号(又名:Koa2实现电影微信公众号前后端开发)> 问题1:该公众号提供的服务出现故障,请稍后重试! 出处:<第4章 实 ...
- 微信公众号只能设置两个网页授权域名的解决方案
考虑到有些萌新同学可能不太了解微信开发的流程,所以简单编辑下作为解释,以下代码只作为参考,开发中使用请自己修改好appid.中转站域名.回调地址.state状态码等 中转站 1.首先,用一个域名做中转 ...
- Koa2 实现微信公众号前后端开发
123 课程目录: 第1章 课程介绍 了解学习课程的必要性,所包含的知识点,课程安排,学习前提,课程收获. 1-1 导学 第2章 第一天 - 准备工作 介绍微信公众号的基本知识与需要关心的流程,以及常 ...
- 2018最新Koa2实现微信公众号前后端开发视频教程
课程目录: 第1章 课程介绍 了解学习课程的必要性,所包含的知识点,课程安排,学习前提,课程收获. 1-1 导学 第2章 第一天 - 准备工作 介绍微信公众号的基本知识与需要关心的流程,以及常见微信开 ...
- 微信公众号H5开发,实现网页授权(静默登录)
文章目录 业务场景 具体实现 1. 配置微信后台 2. 上传校验文件 3. 网页静默授权 附:官方文档 业务场景 最近我司有个2C的需求,以分享链接的形式推广某线上活动, 要求一个链接覆盖微信.H5和 ...
最新文章
- SAP MM 不常用事务代码之MB59
- CSDN 插件限时内测,新用户抢永久免费去广告特权!
- 美团点评CTO罗道锋确认离职,新东家是快手?
- 初次见面,如何令人永远难忘
- eclipse在Windows7 64 位下出现Unhandled event loop exception No more handles
- java 动软_动软代码生成器下载_2017动软代码生成器下载及相关推荐 - noYes软件大全...
- C++Function Object Adapter之not1
- flv 视频 文件 下载
- 谈如何整定PID参数
- 计算机桌面软件乱跳怎么办,电脑桌面乱跳怎么办
- mysql 分区表max_mysql 分区
- 腾讯云通信、网易云通信、极光IM、阿里百川、容云通信国内云通信抉择之路 看云通信市场风云与掌控力 带腾讯云通信实战代码demo
- 物理单位与格子单位转换
- 【STUDY】工程数学
- 【傲腾观察室】英特尔® 傲腾™技术如何助力金融行业关键业务应用?
- bat脚本中pause的作用
- 电脑显示更改默认服务器如何选择,电脑设置服务器在哪里设置
- MFC CFileDialog使用
- android 流量的统计
- 【正一专栏】战长沙——血性尊严
热门文章
- [ENVI] 定量遥感实验-水体叶绿素浓度遥感反演 (超详细步骤)
- cass二次开发vba和lisp_选择AutoLISP还是VBA
- java+mysql基于SSM的大学生兼职信息系统#毕业设计
- TI原版方案 | 研旭YXDSP-XDS560V2PLUS仿真器 支持网口远程调试
- IT学不好没什么,大不了躺平
- SSL加速卡的使用,对HTTPS 七层负载机的性能提升
- Unity3D入门,compile error
- 从新浪微博搜索站点中超大批量爬取新浪微博内容方法和核心源码(java)
- 利用ms17-010 远程执行漏洞渗透Win7,并留下后门
- 看完你就明白:什么情况下该用int main(int argc, char *argv[])而不是int main(void)