Siųskite Java RemoteWebDriver komandas per tarpinį serverį
Nustatykite ClientConfig komandų vykdyklėje, kai Java programa turi pasiekti nuotolinę WebDriver paslaugą per tiesioginį tarpinį serverį.
Java runner → configured proxy → WebDriver service
remote browser → its own route → website
Pirmajam keliui nustatykite Java komandų vykdyklę:
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.URI;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.HttpCommandExecutor;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.remote.http.ClientConfig;
var proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
var config = ClientConfig.defaultConfig()
.baseUri(URI.create("https://grid.example/"))
.proxy(proxy);
var executor = new HttpCommandExecutor(config);
var driver = new RemoteWebDriver(executor, new ChromeOptions());
Naudokite tikrąjį Grid galinį tašką su jo diegimo keliu. Išsaugokite reikiamas Chrome parinktis ir užbaikite seansą naudodami driver.quit().
Tai yra java.net.Proxy Java programos HTTP ryšiui. Selenium capability org.openqa.selenium.Proxy valdo, priešingai, naršyklės puslapių srautą; papildomai ją naudokite tik kai ir antrajam keliui reikia tarpinio serverio.
Seanso kūrimo ar komandos siuntimo klaida priklauso pirmajam keliui. Vėlesnė navigacija gali nepavykti antrajame. Autentifikavimui pas Java programos tarpininką reikia to HTTP transporto palaikomo būdo; naršyklės autentifikavimo callback to nenustato.