很多网页和应用都涉及到微信登录和微信支付,而如果你的业务入口是在微信里,那你的网址是要通过公众号授权,然后才能接入微信登录或者微信支付。

背景:

这是一款彩虹开发基于ThinkPHP6.0框架的微信公众号多域名回调系统。

微信公众号后台默认只能授权2个网页域名,用本系统可突破这个限制,用同一个公众号对接无限多个网站。网站后台支持回调域名白名单的管理,以及登录记录的查看。

本系统还有微信access_token的获取功能,可让当前站点作为中控服务器统一获取和刷新access_token,其他业务逻辑站点所使用的access_token均调用当前站点获取,这样可避免各自刷新造成冲突,导致access_token覆盖而影响业务。

QQ截图20221022175231.png

部署方法:

· 运行环境要求PHP7.4+,MySQL5.6+

· 设置网站运行目录为public

· 设置伪静态为ThinkPHP

· 访问网站,会自动跳转到安装页面,根据提示安装完成

· 访问 /admin 进入后台管理

· 需要对业务代码进行一定修改,具体可以点“帮助”按钮查看

 

这个系统部署起来非常简单,使用起来逻辑也很清晰。其实就是通过搭建一个中转网站,替换官方微信平台的通用api地址,这样就能获取access_token

但是要真正运用起来,作者也说了:

需要对业务代码进行一定修改

也就是你的网站源码里要修改点东西,因为模板里一般写死了官方API的地址,比如:open.weixin.qq.com 或api.weixin.qq.com

你需要找到你的业务网站里的相应代码,然后替换成这套:微信公众号多域名回调系统的网址

站长已经提供修改了几个知名的网站框架的代码位置,亲测可用。在附件里提供下载(微擎、彩虹易支付、日主题RiproV2.,也会后续更新)

已获得查看权限 链接:https://pan.baidu.com/s/1B-RdAJqTzeAMWNuWEJoGrA 提取码:rc9p

原理:

微信公众号多域名回调系统本质就是提供一个“桥梁”域名,“桥梁”域名是什么意思呢?我简单说下我的思路:

1、第一步先让微信公众号网页授权一个M域名,M域名作为一个桥梁过渡。

2、将M域名成功获得授权后,根据需要再授权给域名A,域名B,域名C等。这些A、B、C等域名获得M域名授权之后,进行授权回调。然后再有M域名统一向微信进行请求授权,然后回调。

麦壳云建站解决了微信公众号网页授权多个域名问题

可能说的有点太抽象了,不太好理解,那么我用一个图来表达下,大家就一目了然了。

麦壳云建站解决了微信公众号网页授权多个域名问题

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。