news 2026/8/28 13:39:55

微信登录,重定向接口,向前端返回html代码,前端通过window.open打开的微信扫码页面,html代码通过postmassage向前端的父页面发消息,请编写html部分的代码

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
微信登录,重定向接口,向前端返回html代码,前端通过window.open打开的微信扫码页面,html代码通过postmassage向前端的父页面发消息,请编写html部分的代码

假设你的场景是这样的:

  1. 用户在前端点击“微信登录”,用window.open(url)弹出一个新的窗口去做扫码登录。
  2. 服务端的重定向接口在登录成功后,向弹出页面返回特定的 HTML 页面代码。
  3. 这个 HTML 代码通过window.opener.postMessage向主页面(父页面)发送消息(携带授权/用户信息等)。

下面是微信扫码授权成功后的 HTML 文件(示例代码):

<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>微信登录返回</title></head><body><script>// 这里假设你把后端通过重定向参数传给这个页面的数据放在URL上// 例如你的url是 /wx-redirect?code=xxx&state=xxxfunctiongetQueryParam(name){constre=newRegExp('[?&]'+name+'=([^&#]*)','i');constmatch=window.location.search.match(re);returnmatch?decodeURIComponent(match[1]):null;}// 获取你需要回传给父窗口的数据,比如微信的codevarcode=getQueryParam('code');varstate=getQueryParam('state');// 可选// 向父窗口发送消息if(window.opener){window.opener.postMessage({type:'wechat_login',code:code,state:state},'*');// 建议将 * 替换为你的父页面origin}// (可选)自动关闭弹窗window.close();</script><h2>登录成功, 正在跳转...</h2></body></html>

前端主页面监听接收:

window.addEventListener('message',function(event){// 建议校验 event.originif(event.data&&event.data.type==='wechat_login'){// 这里可以拿到 event.data.code, event.data.state// 做后续登录处理console.log('收到微信登录结果:',event.data);}});

说明

  • 你可以根据自己的需求,在 HTML 中加入 loading 或美化提示。
  • 强烈建议在实际环境将 postMessage 的目标 origin 用主页面真实的 origin 替代*,增加安全性。
  • 参数和业务可以自定义,比如是 code 还是 token、state、其他。

如果你还有后端部分的接口编写需求,可以继续追问。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/28 4:12:56

企业级html 图书管理系统管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】

摘要 在信息化时代背景下&#xff0c;图书管理系统的智能化与高效化成为图书馆和企业资源管理的核心需求。传统的图书管理方式依赖人工操作&#xff0c;存在效率低下、数据易丢失、查询不便等问题&#xff0c;难以满足现代企业对图书资源的精准管理和快速检索需求。随着互联网技…

作者头像 李华
网站建设 2026/8/26 21:01:44

7、伪微分算子相关理论及狄拉克哈密顿量的解耦

伪微分算子相关理论及狄拉克哈密顿量的解耦 1. 伪微分算子的基本概念与相关公式 在研究中,涉及到一些重要的公式和概念。例如,有如下表达式: [ c_2(x, \xi) = \sum_{|\iota|\leq N} \frac{(-i)^{|\iota|}}{\iota!} a^{(\iota)}(x, \xi)k^{(\iota)}(x, \xi) + R_{2N}(x, \…

作者头像 李华
网站建设 2026/8/27 6:01:50

基于微信小程序的在线家庭清洁系统毕设源码

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于微信小程序的在线家庭清洁系统&#xff0c;以满足现代家庭对于便捷、高效、个性化的清洁服务需求。具体研究目的如下&#xff1a; …

作者头像 李华
网站建设 2026/8/27 16:38:36

20、微软 Windows Vista 使用指南:账户管理与数据保护

微软 Windows Vista 使用指南:账户管理与数据保护 临时提升账户权限 标准用户在某些时候可能需要执行一些通常受限的操作,比如安装新程序。幸运的是,只要有管理员密码持有者提供授权,标准用户无需注销当前账户、切换到管理员账户,就能执行受限操作。 当标准用户尝试执行…

作者头像 李华
网站建设 2026/8/27 17:48:25

15、活动目录用户与组管理操作指南

活动目录用户与组管理操作指南 在企业的 IT 环境中,活动目录(Active Directory,简称 AD)是一项至关重要的服务,它用于管理用户、计算机和其他资源。本文将详细介绍如何对用户对象的各种属性进行修改,以及如何创建和删除组对象。 1. 修改用户对象的配置文件属性 当你创…

作者头像 李华
网站建设 2026/8/27 11:01:26

17、活动目录计算机对象与组织单位管理指南

活动目录计算机对象与组织单位管理指南 1. 移动计算机对象 在管理活动目录时,有时需要移动计算机对象到不同的组织单位(OU)或容器中。可以通过以下两种方式实现: 1.1 使用 Windows 界面 点击“开始”,选择“管理工具”,然后点击“Active Directory 用户和计算机”。 …

作者头像 李华