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

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

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

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参数进行转发请求的操作指示
Vscode远程免密连接Linux虚拟机,并配置C/C++运行环境 目前想要深入学习在Linux,也为了方便编写C/C++程序。Linux的环境里一般自带有c++的编译环境,如果没有安装gcc和g++等编译器也比较便利。但是在虚拟机里用vim编写C++程序又不得劲,因此打算使用vscode远程连接Linux虚拟机进行学习。为了防止自己以后还要再配置,重复踩坑,因此写下这篇博客用做记录。环境:windows11、VMware17、rocky linux9.1 ( 开源的CentOS9 ) 阅读详情

相关推荐

《从0到1:CTFer成长之路》书籍配套题目-[第二章 web进阶]文件上传

[第二章 web进阶]文件上传开始行动绕过第1个限制绕过第2个限制 介绍:记录一下笔记,方便以后迅速回忆使用。 《从0到1:CTFer成长之路》书籍配套题目,来源网站:《从0到1:CTFer成长之路》 先看一下题目源码: <?php header("Content-Type:text/html; charset=utf-8"); // 每5分钟会清除一次目录下上传的文件 require_once('pclzip.lib.php'); if(!$_FILES){ echo '

weixin_46703850的博客 3411

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

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

qq_22161527的博客 2724

腾讯云TDSQL MySQL版 - 开发指南兼容性

语言结构 分布式实例支持所有 MySQL 使用的文字格式,包括: String Literals Numeric Literals Date and Time Literals Hexadecimal Literals Bit-Value Literals Boolean Literals NULL Values String Literals String Literals 是一个 bytes 或者 characters 的序列,两端被单引号'或者双引号"包围,TDSQL MySQL版

weixin_43872058的博客 911

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

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

虽码不是农博客 780

RK3588平台-ES8388音频驱动调试与设备树配置实战

本文详细解析了在RK3588平台上调试ES8388音频驱动的实战过程。内容涵盖Linux音频驱动的三层架构(Machine、Platform、Codec),并重点提供了设备树(DTS)的完整配置示例,包括I2C节点、声卡节点及音频路由设置。文章还分享了驱动加载验证、amixer调试命令以及常见问题(如无声、变调)的排查思路,旨在帮助开发者快速完成RK3588与ES8388的音频系统集成。

mango的博客 808

kubernetes rook 安装 cephfs

ceph root kubernete osd uuid partuuid

天津托的博客 1543

支付回调代理转发

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

p763833631的博客 357

Gröbner基方法入门第I部分:项序和约化

Gröbner基方法入门第I部分:项序和约化 理想的准素分解与矩阵分解是计算代数的核心问题,它们在计算机代数、计算代数几何、代数编码和密码学、多维系统理论等学科都有非常重要的理论意义与应用价值.Gröbner基理论是研究理想的准素分解与矩阵素分解的重要工具之一.更简单地概括:Gröbner基方法是从任意一个多项式理想的一组给定生成元,计算另一组性质良好的生成元,并称为该理想的Gröbner基.它能用来判定任意多项式是否属于该理想. Gröbner基的代数算法是Buchberger在1960年代开发的,并

MinCong Luo的博客 4267

【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

基于最小二乘法蒙特卡洛模拟(LSM)可转债定价原理及算法演示

可转换债券是一种极其复杂的信用衍生产品,除了一般债权外,它还包含着多个期权,包括转股权、回售权、赎回权和发行人的转股价格修正权,条款的复杂性决定了可转债定价的复杂性。可转债定价方法较为普遍的是依据B-S期权定价公式和二叉树模型,在对内嵌期权定价的基础上,加上纯债的价值,从而对可转债进行定价。但是可转债附加的期权不仅仅是一个美式期权,而是附加了赎回、回售和下修等特殊条款,以上定价方法仅可看做对可转债价值的近似估计,难以对其中的条款博弈进行定价。

weixin_43971191的博客 1731

(11-3-01 )

以太坊(Ethereum)是一种基于区块链技术的开源平台和加密货币。它于2015年由Vitalik Buterin和Gavin Wood等开发者创建,并成为比特币之后最受欢迎的加密货币之一。以太坊不仅支持加密货币交易,还为开发者和企业提供了构建去中心化应用程序的强大工具。在本节的内容中,将实型一个完整的机器学习模型项目,智能检测出以太坊区块链中的非法账户。从问题定义到模型建立和评估,再到最终的总结和建议。本实例突出了处理类别不平衡问题的重要性,并展示了如何使用多种机器学习算法来解决实际问题。此外,通过数据可

码农三叔 2171

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

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

weixin_33979203的博客 307

手把手教你学Simulink--基于高频与高速信号处理的滤波器场景实例:毫米波雷达中匹配滤波器的多目标分辨仿真

在自动驾驶、智能交通和工业感知等领域,毫米波雷达(mmWave Radar)因其高分辨率全天候工作和抗电磁干扰能力,成为关键的感知传感器。其核心信号处理算法之一是匹配滤波器(Matched Filter),用于在强噪声背景下最大化信噪比(SNR),实现对微弱目标的检测。在调频连续波(FMCW, Frequency-Modulated Continuous Wave)雷达中,发射信号为线性调频(Chirp)信号。当信号遇到多个目标时,回波是多个延迟版本的叠加。

MHD0815的博客 134

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

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

qq_39561488的博客 6979

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

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

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

gitblog_01118的博客 1032

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

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

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

解决微信授权回调页面域名只能设置一个的问题 [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、付费专栏及课程。

余额充值