Geef de RSelenium-browser zijn proxy bij het openen van de sessie
Gebruik extraCapabilities voor de browserroute en onderscheid de afwijzing van het sessieprotocol van een browser die de proxy niet kan bereiken.
Geef de proxy mee als browser-sessiemogelijkheid vóór driver$open(), in een RSelenium-implementatie waarvan de WebDriver-server het sessieprotocol accepteert:
browser_proxy <- list(
proxyType = 'manual',
httpProxy = 'proxy.example:8080',
sslProxy = 'proxy.example:8080'
)
driver <- RSelenium::remoteDriver(
remoteServerAddr = 'webdriver.example',
port = 4444L,
browserName = 'chrome',
extraCapabilities = list(proxy = browser_proxy)
)
driver$open()remoteServerAddr identificeert de WebDriver-service. De mogelijkheid beschrijft waar de browser daarna naartoe gaat. Een HTTP-proxyinstelling in R alleen configureert die browserroute niet.
Gebruik host:port in httpProxy en sslProxy. De laatste kiest HTTPS-bestemmingen; het impliceert geen met TLS beveiligde proxylistener. Een openbare HTTP-kandidaat uit de HTTP-proxylijst levert een host en poort voor deze velden, mits de browserhost die kan bereiken.
Welke fout deed zich eerst voor?
Als het openen van de sessie wordt geweigerd, controleer dan de protocolcompatibiliteit voordat u het proxy-eindpunt wijzigt. De remoteDriver-bron van RSelenium verstuurt verouderde desiredCapabilities; een willekeurige huidige WebDriver-server kan dat formaat weigeren voordat er een browser is om de route te testen.
Als de sessie opent maar navigatie mislukt, controleer dan de bereikbaarheid vanaf de werkelijke browserhost. Voor een container of Grid-node betekent localhost die node, niet het R-werkstation.