是否有一个工具可以让我以编程方式检查和编辑从我的盒子中动态发出的 http 请求?
我希望能够在主 URL 关闭时访问常用下载文件的镜像。 (奖励积分还适用于 MacOS 和 Windows 的解决方案)
更具体地说,这正是我希望实现的目标:
我的机器上的进程 FOO 尝试发出 https 请求以下载某个外部服务的文件:https://someserver.com/fileA
拦截器工具注意到正在发出的请求并接管。它继续向https://someserver.com/fileA
如果请求成功,则将这些位返回给进程 FOO
但是,如果请求因某些错误代码而失败(可能 someserver.com 已关闭),则拦截器工具会向其他某个 url 发出请求(例如https://backupserver.com/fileA)
拦截器工具返回备份url返回的值来处理FOO
(这主要在 Ubuntu 机器上运行,但我最终也需要类似的 Windows 和 MacOS 系统)
答案1
评论代理中已经有一些很好的例子可以实现您指出的功能。另一个例子,haproxy可以用正则表达式重写URL,也支持LUA脚本:https://www.haproxy.com/documentation/hapee/latest/traffic-routing/rewrites/rewrite-requests/