为了账号安全,请及时绑定邮箱和手机立即绑定

无法使用 chrome Web 驱动程序命中 servlet

无法使用 chrome Web 驱动程序命中 servlet

白猪掌柜的 2021-08-04 10:42:03
我试图在同一个 web 应用程序中使用 selenium chrome web 驱动程序命中我自己的 servlet,但代码没有命中我在 servlet 中设置的断点。以下是我用来调用servlet的代码,ChromeOptions options = new ChromeOptions();options.setHeadless(true);String PROXY = <proxy ip> + ":" + <proxy port>;     Proxy proxy = new Proxy();proxy.setHttpProxy(PROXY);DesiredCapabilities capabilities = DesiredCapabilities.chrome();capabilities.setCapability(CapabilityType.PROXY, proxy);options.merge(capabilities);ChromeDriver webDriver = new ChromeDriver(options);webdriver.get("http://<some ip>:<some port>/myApp/myServlet")当我使用 url 从浏览器中调用 servlet 时http://<some ip>:<some port>/myApp/myServlet它到达断点。但是当我尝试从 webdriver 做同样的事情时,它不起作用。任何人都可以帮我解决这个问题吗?更新- 下面是处理请求的 servlet。public class MyServlet extends HttpServlet {    @Override    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {        System.out.println("In MyServlet -> doPost()");    }    @Override    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {        System.out.println("In MyServlet -> doGet()");    }}
查看完整描述

1 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

终于找到问题了,我使用的代理地址导致了问题,当我更改代理时,我能够成功命中servlet。

为了更好地管理它,我维护了一个代理池,并添加了代码以在代理无效时从池中删除代理,还添加了代码以提供池中的下一个有效代理。


查看完整回答
反对 回复 2021-08-04
  • 1 回答
  • 0 关注
  • 119 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信