0

我的网站使用警报框身份验证进行代理保护。我试过这个例如:http://username:[email protected]但在我的情况下不起作用。开发者加入网站上的cookie时我会网址打开收到错误之前添加饼干:如何在Selenium WebDriver中打开URL之前在PHP Facebook WebDriver中添加cookie?

InvalidCookieDomainError is not defined.

是否有任何其他方式绕过代理认证?

是否可以在没有开放域的情况下添加cookie?

+0

只是一个愚蠢的假设,因为我不明白为什么标准的http:// username:[email protected]不起作用。也许你正在使用https而不是http? :) –

+0

它适用于https,但在网站上有些页面被限制为https在那种情况下警告框再次发生 –

回答

0

好吧Raza,如果你的目的是检查一个警报,并接受它,如果它存在(正如你所提到的,有些页面显示你警报和一些没有);尝试使用下面的方法看看是否能解决你的问题:

public boolean isAlertPresent() throws InterruptedException {  

     try { 
      for(int i=1; i<3; i++){ 
      TimeUnit.SECONDS.sleep(3); 
      getDriver().switchTo().alert(); 
      System.out.printf("%n*** An alert was present ***"); 
      alertPresent=true;     
      }    
      catch (NoAlertPresentException e) { 
      System.out.printf("%n*** An alert was not present ***"); 
      alertPresent=false;   
      } 

     return alertPresent; 
    } 

现在取决于你是否警报存在与否可以直接您的流量,你这是怎么接受的警报(是的,OK,继续):

if (alertPresent==true){ 
driver.switchTo().alert().accept(); 
System.out.println("Successfully accepted an alert!"); 
} 
else{System.out.println("Couldn't locate an alert!");} 

希望以上解决它给你;如果没有,不用担心,在下面发帖子,我们会看到我们能做些什么。

祝你好运!

+0

我试过这个东西不适用于我仍然获得授权要求错误 –

+0

这应该工作,除非新的窗口,禁止你从进一步的进展是一个实际的浏览器窗口弹出窗口,而不是一个警报(如果这是有道理的话,看起来像更多的Windows widnow)。对不起,如果你可以在实际的窗口上提供更多的信息(即它是什么类型的,也许有些HTML代码会有帮助或者至少有一个截图),我们可以再去一次。 –

相关问题