我的计算机上运行了一项服务。此服务在HTTPS上发布,在HTTP上启动似乎有点复杂。某个远程机器在HTTP上执行对我的机器的调用(这不在我的控制之下)。我想用我的服务执行一些非性能关键的测试,看起来最简单的方法就是使用HTTP到HTTPS反向代理。 Fiddler适用于HTTP到HTTP和HTTPS到HTTPS场景,但我无法使其适用于我的情况。因此,我需要:
+----------------+ +--------------------------------+
| Remote machine | -------> | My machine |
| | HTTP | Fiddler -------> My machine |
| | | HTTPS service |
+----------------+ +--------------------------------+
我可以使用Fiddler实现这一目标吗?
答案 0 :(得分:3)
当然,Fiddler可以将入站请求从HTTP转换为HTTPS。
最简单的方法是在OnBeforeRequest中添加一些内容,如:
if (oSession.HostnameIs("myhost") &&
(oSession.oRequest.pipeClient.LocalPort == 80))
{
oSession.fullUrl = "https://" + oSession.url;
}
当然,这假设Fiddler配置为在端口80(HTTP的默认端口)上运行。您可以在任何您喜欢的端口上运行它(例如,如果端口80已经在使用中),但您需要更改客户端请求的URL中的端口,如果您可以这样做,您可能能够更改客户端以使用HTTPS URL开始。