我在本地端口8500上设置了一个模拟服务器进行测试,并表现得像一个代理。我已经读到chrome将忽略来自localhost的那些请求的代理设置,并且需要添加--proxy-bypass-list=<-loopback>
来禁用/绕过该规则。它一直工作到今天。
我的配置:系统:MacOs Catalina,10.15.3浏览器:Chrome版本80.0.3987.149
启动chrome的参数是--ignore-certificate-errors,--proxy-bypass-list="<-loopback>",--proxy-server=http://localhost:8500
我使用selenium进行自动化,基本url是http://localhost:8080
运行后,我可以看到像cdn-js文件这样的"外部"url调用,字体文件实际上是通过8500端口上的代理服务器进行的。但我找不到任何本地主机调用然后,我将baseUrl更改为我的一个测试环境,它不是localhost,例如10.10.10.10:8080
,我可以看到所有流量都在通过代理,包括到10.10.10.10:8080
的流量
我怀疑新的chrome版本打破了绕过规则,因为我今天早些时候有更新。
请帮忙!非常感谢。
这些行对我有用:
ChromeOptions options = new ChromeOptions();
options.addArguments("--proxy-bypass-list=<-loopback>");
WebDriver webDriver = new ChromeDriver(options);