实现多个域名回调的微信请求转发-用于解决微信回调域名限制的工具

解决了只能设置一个网页授权回调域名的问题 立即下载

欢迎关注新博客下的同篇文章

http://exp.szer.me/parry/blog/wordpress/index.php/2018/05/01/wx_proxy/

代码文件

ReqForward 用于解决微信回调域名限制的请求转发工具
https://github.com/ParrySMS/ReqForward

  • 注:代码结构有些混乱,未支持全部的请求转发,后续不定时更新
  • 已计划于2018-7进行大的更新,欢迎大家在评论中留言提出意见
  • 新更新的代码见 WxProxy-微信请求代理(即将完工)

请求流程说明

由于微信服务号后台限制只能有1个回调域名,当业务需求需要多个域名使用同一个服务号相关请求时,就必须要将相关业务部署到同一个域名下。为了解决这类问题,可指定一个回调域名用于转发微信相关的请求。例如,指定回调域名为 proxy.qq.com ,则需要向微信请求时,请求流程如下:

a.qq.com —请求—> proxy.qq.com下的接口 —请求—> 微信API接口

b.qq.com —请求—> proxy.qq.com下的接口 —请求—> 微信API接口

proxy.qq.com在接收到请求后,再次请求微信API接口,并将微信API接口的返回内容直输出返回。

安全问题

身份验证

请求转发必须加上对应的身份验证校验(例如JWT验证),必须保证是自己的业务域名进行相关调用,否则存在被他人恶意调用或攻击的风险。

参数安全

请求转发可以有效保证服务号的appid和appsecret不暴露于其他业务中,并且提高了项目部署的灵活性(可以在多台机器下部署不同代码的不同项目,减少运维所需的工作)

代码说明

配置文件 config.php
  • 需要填写appid和appsecret的参数
  • ACTION_REGION 参数指定了可接受的转发请求,与forward.php中的 swtich case 语句一一对应
加密授权 auth.php
  • 在该文件下设置sign参数和action参数的加密方式
转发请求处理 forward.php
  • 使用加密的sign参数进行身份校验
  • 使用加密的action参数进行转发请求的操作指示
无刷直流电机矢量控制(四):基于滑模观测器的无传感器控制 无刷直流电机矢量控制,采用转速、电流双环控制,电流环dq解耦,d轴采用id=0控制,q轴采用转速外环。采用滑模观测器(SMO),根据电压电流信息进行电机位置角度动态估算,模型可直接运行,转速和角度跟踪精度较高。 本文整理了该方法的基本原理,介绍了在MATLAB/Simulink中的建模和仿真过程,最后附上完整的模型文件。 一、基本原理 滑模观测器(下文简称SMO)是基于滑模变结构控制方法的一种状态观测器。其针对无刷直流电机转子位置估算的实现过程如下。 假设采用矢量控... 阅读详情

相关推荐

链家二手房信息爬取(内附完整代码)

链家二手房信息爬取1.简介2. 爬虫思路2.1 网页分析2.2 详情页分析2.3 不同页码的爬取2.4 解决链家只显示100页数据2.5 简单的反爬与进度条显示3. 总结 1.简介   最近帮同学爬取了链家在售二手房的信息,这是本人学习爬虫以来爬取数据最多的一次,就想着写个博客记录一下。   本次爬虫是利用python+jupyter notebook实现的,用到的第三方库如下: import pandas as pd # 数据存储 import requests # 网页内容获取 import re #

qq_46256922的博客 3万+

微信服务号授权-多个回调域名

项目背景 参考链接 参考代码 微信授权业务流程 项目背景 公司有一个订阅号,需要根据这个订阅号做一个用户基本信息的获取。订阅号没有权限,只有服务号有此权限,于是就用服务号授权给订阅号。同时,由于服务号回调域名已被使用,只能通过配置多个回调域名。 参考链接 微信官方文档:https://developers.weixin.qq.com/doc/offiaccount/OA_...

qq_22161527的博客 2724

告别玄学调试:用STM32CubeMX和逻辑分析仪搞定DP83848的RMII与SMI接口

本文详细介绍了如何使用STM32CubeMX和逻辑分析仪调试DP83848的RMII与SMI接口,帮助开发者超越表象,直接观察底层通信波形。通过实战案例和高级调试技巧,解决常见问题如时钟偏移、信号完整性等,提升网络接口的稳定性和可靠性。

weixin_30752699的博客 300

第三方接口回调转发到不同环境

其次是WebApplicationContext获取的applicationContext,它id是:org.springframework.web.context.WebApplicationContext:/payment-front-webapp,通过BeanDefinitionNames()这个方法发现,没有HttpClient的bean,连Controller的bean都没有。这些逻辑都是和接口逻辑不相干的,因此考虑切面等方式处理,最后采用filter处理。因此在请求转发的时候,要删掉。

虽码不是农博客 780

群晖NAS搭建Git Server避坑指南:从SSH配置到权限管理的完整流程

本文提供了一份详尽的群晖NAS搭建Git Server实战指南。文章从启用并安全配置SSH服务入手,深入解析了用户权限体系设计、SSH连接与仓库初始化、客户端SSH密钥配置等核心步骤,并提供了常见错误排查与生产环境加固方案,帮助开发者成功构建私有、安全的代码托管平台。

rock5的博客 420

Windows10下RTABMAP+T265实现三维建图

win10+rtabmap+t265扫描地形

Suxiang1997的博客 3486

支付回调代理转发

某些客户为了安全 不对外完全开放域名 但支付回调需要外网可以访问 可以在不完全开放的情况下 仅开放一个端口 Nginx里配置下端口 开放端口指向的目录下新建个转发文件 文件名和原回调文件名相同即可 回调url用这个开放的端口的 下面这个是为某个客户解决这个情况时做的 客户仅使用支付宝 支付可以实现成功回调 <?php error_log(date("c") . ...

p763833631的博客 357

ROS2_Moveit2_Ur5e_Grasp项目详解(二):核心模块功能解析

本文深入解析了ROS2_Moveit2_Ur5e_Grasp项目的核心模块功能。重点阐述了OctoMap建图模块如何为机械臂提供实时三维环境感知,并详细介绍了Robotiq夹爪与MoveIt2的集成控制、UR5e的运动规划策略,以及视觉模块如何协同工作,最终实现从目标检测到动态抓取的完整闭环。

weixin_29254029的博客 113

【nginx】nginx请求限制配置

在nginx的default.conf的server{}之外配置中配置: limit_req_zone $binary_remote_addr zone=req_zone:1m rate=1r/s; 限制约束: 拦截1秒内请求次数超过1次的请求 接下来在server{}中的location /{}中配置: # 请求限制 保证3个延迟响应其他的返回503 limit_req zone=r...

Evan_QB的博客 579

RTK_ROS_导航(1): GNSS里程计

1. RTK 配置 4G CORS + 4G 网络 + 户外有信号,不能实现RTK,就恢复出厂设置 输出信息包含(一般需要三个同时打开): GAPPA:包含位置信息 GPVTG:包含速度信息 GPHDT:包含定向的朝向信息 2. ROS驱动 驱动安装sudo apt install ros-noetic-nmea-navsat-driver 运行,需要修改该功能包的启动端口,会自动解析上面的3个RTK语句信息roslaunch nmea_navsat_driver nmea_serial_d

旋风小短腿 4265

还在纠结二层交换机和三层交换机的区别?这篇文章帮你讲明白!

你好,这里是网络技术联盟站,我是瑞哥。公众号后台有小伙伴想要写一篇文章具体介绍一下二层交换机和三层交换机,此类的文章,之前写过几篇,今天瑞哥再写一篇,希望对大家有所帮助!

网络技术联盟站 4442

直接请求转发(Forward)和间接请求转发(Redirect)两种区别?

  用户向服务器发送了一次HTTP请求,该请求肯能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉不到请求转发的。根据转发方式的不同,可以区分为直接请求转发(Forward)和间接请求转发(Redirect)两种有何区别呢?本篇在回答该问题的同时全面的讲解两种请求转发方式的原理和区别。 【关键考点】 请求转发的含义; Forward转发请求...

weixin_33979203的博客 307

新凯来嵌入式面经及参考答案

利用编译器预定义宏判断目标架构,如。

大模型大数据攻城狮的专栏 2065

解决微信授权回调多个域名的设置

在做项目集成微信登录以及微信支付的时候,都需要进行用户授权。这个授权的流程可以简单描述为: 用户从我们的应用触发需要授权的操作,比如点击微信登录; 应用收到这种用户请求后,将用户重定向到微信提供的一个授权页面: 用户通过微信扫码(PC端授权,上边左图)或者点击确认按钮(移动端授权,上边右图)告知微信,授权应用访问自己的微信账号信息; 微信收到用户的授权许可后,生成授权码,并把它作为参数回调至应...

qq_39561488的博客 6979

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

微信授权多域名难题?GetWeixinCode让你告别单一回调限制

GetWeixinCode是一款专为解决微信OAuth2.0网页授权只能设置一个回调域名问题的实用工具,通过巧妙的跳转机制,让开发者无需将所有项目集中部署在单一域名下,轻松实现多域名微信授权。 ## 为什么需要GetWeixinCode? 微信OAuth2.0网页授权机制要求开发者必须在公众平台设置唯一的回调域名,这给需要在多个域名下实现微信登录功能的项目带来了极大限制。传统解决方案往往需要将

gitblog_01118的博客 1032

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

php微信开发回调域名,微信jsapi支付网页授权回调域名限制问题

问题描述:微信的jsapi支付有一个必传参数openid,需要使用微信网页授权接口拿到,但目前微信最多允许设置两个回调域名。见官方说明:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_3解决方案:设置回调中心转发。解决步骤:假设你的平台下有5个域名需要jsapi支付,a.com,b.com,c.com,d.com.e.com,其...

weixin_35927509的博客 1020

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

解决微信授权回调页面域名只能设置一个的问题 [php]

https://www.cnblogs.com/lyzg/p/6159617.html 最终的解决方案是:https://github.com/liuyunzhuge/php_weixin_proxy,详细的介绍请往下阅读。 在做项目集成微信登录以及微信支付的时候,都需要进行用户授权。这个授权的流程可以简单描述为:  1. 用户从我们的应用触发需要授权的操作,比如点击微信登录;  2. 应...

slqgenius的博客 1098

微信网页登陆多域名回调解决

最近多个程序遇到需要微信登陆,微信官方只允许添加两个域名,显然是不满足需求的,经过查询,有了如下代码: 实现思路:A域名为中转域名,将中转域名和微信官方对接后,所有的业务BCD域名都去请求中转A域名,A域名再去请求微信,将返回的State和Code原封不动的转发给业务域名,业务域名拿到这两个值后获取access_token,再通过access_token获取用户信息 代码如下: <!DOCT...

白鹭先生的博客 1154

微信网页版限制突破神器:wechat-need-web插件终极解决方案

还在为微信网页版频繁的"请在微信客户端登录"提示而烦恼吗?办公场景中电脑端无法正常使用网页版微信的尴尬局面终于有了完美解决方案。wechat-need-web这款创新浏览器插件通过智能技术手段,让Chrome和Firefox用户彻底告别微信网页版的访问限制,实现无缝登录和稳定使用体验。 ## 🔍 微信网页版访问限制的深层原因 微信网页版之所以频繁出现访问问题,主要源于腾讯严格的安全策略和多层

gitblog_00663的博客 1252

PHP Weixin Proxy: 解决微信网页授权回调域名难题

PHP Weixin Proxy: 解决微信网页授权回调域名难题 项目介绍 在开发微信相关应用时,我们经常会遇到一个问题:由于安全策略,微信只允许配置一个固定的回调域名。php_weixin_proxy 是一个简单但高效的PHP解决方案,它作为一个代理转发工具,帮助你在多环境部署中灵活处理微信网页授权回调问题。 这个小巧的项目由liuyunzhuge开发,通过一个单一的PHP文件即可实现回调UR...

gitblog_00046的博客 664

无需公网IP和域名!内网穿透一键解决微信支付回调难题

通过ZeroNews或Ngrok实现内网穿透,你可以轻松绕过公网IP和域名的限制,让微信支付回调直接访问本地服务。无论是开发调试还是临时部署,这些方案都能显著降低对接门槛,节省时间和成本。

Kathy_1122的博客 2306

OpenMAIC PBL v2 结课报告生成器:evaluator-final 提示词的结构化输出契约与工程实现

本篇技术指南以 OpenMAIC 仓库中 PBL v2 教学引擎的最终评估系统提示词 [evaluator-final.md](https://link.gitcode.com/i/847e67c0f1f44e73d673439bb6c5974a) 为骨架,剖析「整项目完结报告(Completion Report)」是如何由 LLM 生成、解析并持久化的:从严格 JSON 输出契约、四类字段的取值

gitblog_00860的博客 1110

微信小程序使用微信云托管添加自定义域名并转发到pexels.com

背景:我要在小程序上显示pexels.com上的图片,然后我得先把pexels.com的域名添加到小程序的request合法域名中,但是pexels.com是国外的,在国内没有备案所以添加不了。假设aaaa.com是你已经备案好的域名,pexels-proxy是二级域名,如果你的域名有https证书的话,可以先把https证书上传,如果没有我在本文会讲到如果10分钟申请一个免费https证书。这样在一个域名下完成了两个域名的转发,只要通过后缀区分即可,我们先设置好自定义域名再说这么访问。

一方的博客 1580

IT忍者神龟之解决微信授权回调页面域名只能设置一个的问题

在做项目集成微信登录以及微信支付的时候,都需要进行用户授权。这个授权的流程可以简单描述为: 1. 用户从我们的应用触发需要授权的操作,比如点击微信登录; 2. 应用收到这种用户请求后,将用户重定向到微信提供的一个授权页面: 或 3. 用户通过微信扫码(PC端授权,上边左图)或者点击确认按钮(移动端授权,上边右图)告知微信,授权应用访问自己的微信账号信息; 4. 微信收到用户的授权许可后,生成授权码...

IT忍者神龟 840

如何轻松解决微信网页版访问限制?wechat-need-web插件全解析

还在为微信网页版频繁出现的访问限制而烦恼吗?😫 每次打开微信网页版,不是提示"请在微信客户端打开",就是各种验证码困扰,让原本便捷的网页沟通变得异常繁琐。今天,就让我带你深入了解一款能够彻底解决这一痛点的浏览器插件——wechat-need-web,让你的微信网页版使用体验焕然一新! ## 为什么你的微信网页版总是无法正常访问? 微信网页版作为企业办公和日常沟通的重要工具,却常常因为各种技术

gitblog_00471的博客 1055

如何突破微信网页版限制?wechat-need-web插件一键解决方案

还在为微信网页版无法正常访问而烦恼吗?**wechat-need-web**这款免费浏览器插件或许正是你需要的终极解决方案!它通过智能修改网络请求,让Chrome和Firefox用户能够顺畅使用微信网页版,告别繁琐的登录流程和频繁的访问限制。 ## 问题背景:为什么微信网页版总是"不可用" 相信很多用户都有这样的经历:打开微信网页版,却看到"请在微信客户端登录"或"当前环境不支持"的提示。这种

gitblog_00783的博客 795
上一篇: web开发文章分享 -- 从摸门到入门
下一篇: iPhone机型比较-到底买iPhoneX还是iPhone8?看看朋友们的意见
维生素P
博客等级 码龄9年 14粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值