Java runner → configured proxy → WebDriver service
remote browser → its own route → website

ആദ്യ പാതയ്ക്കായി Java കമാൻഡ് എക്സിക്യൂട്ടർ ക്രമീകരിക്കുക:

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());

വിന്യസിച്ചിരിക്കുന്ന പാത ഉൾപ്പെടെ യഥാർഥ Grid എൻഡ്‌പോയിന്റ് ഉപയോഗിക്കുക. ആവശ്യമായ Chrome ഓപ്ഷനുകൾ നിലനിർത്തി driver.quit() ഉപയോഗിച്ച് സെഷൻ അവസാനിപ്പിക്കുക.

ഇത് Java പ്രോഗ്രാമിന്റെ HTTP കണക്ഷനുള്ള java.net.Proxy ആണ്. Selenium-ന്റെ org.openqa.selenium.Proxy capability പകരം ബ്രൗസറിന്റെ പേജ് ട്രാഫിക്കാണ് നിയന്ത്രിക്കുന്നത്; രണ്ടാമത്തെ പാതയ്ക്കും പ്രോക്സി ആവശ്യമുള്ളപ്പോൾ മാത്രം അതും ഉപയോഗിക്കുക.

സെഷൻ സൃഷ്ടിക്കാനോ കമാൻഡ് അയയ്ക്കാനോ കഴിയാത്തത് ആദ്യ പാതയിലെ പ്രശ്നമാണ്. പിന്നീടുള്ള നാവിഗേഷൻ രണ്ടാമത്തേതിൽ പരാജയപ്പെടാം. Java പ്രോഗ്രാമിന്റെ ഇടനിലക്കാരനിൽ പ്രാമാണീകരണത്തിന് ആ HTTP ട്രാൻസ്പോർട്ട് പിന്തുണയ്ക്കുന്ന രീതി വേണം; ബ്രൗസറിന്റെ പ്രാമാണീകരണ callback അത് ക്രമീകരിക്കില്ല.

അനുബന്ധ ലേഖനങ്ങൾ