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代碼會有幫助或者至少有一個截圖),我們可以再去一次。 –

相關問題