ສົ່ງຄຳສັ່ງ RemoteWebDriver ຂອງ Java ຜ່ານ proxy
ຕັ້ງ ClientConfig ເທິງ command executor ເມື່ອໂປຣແກຣມ Java ຕ້ອງໄປເຖິງບໍລິການ WebDriver ທາງໄກຜ່ານ forward proxy.
Java runner → configured proxy → WebDriver service
remote browser → its own route → website
ສຳລັບເສັ້ນທາງທຳອິດ ໃຫ້ຕັ້ງ Java command executor:
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.net.Proxy ສຳລັບການເຊື່ອມຕໍ່ HTTP ຂອງໂປຣແກຣມ Java. capability org.openqa.selenium.Proxy ຂອງ Selenium ກັບຄວບຄຸມ ການຮັບສົ່ງໜ້າເວັບຂອງບຣາວເຊີ; ໃຊ້ມັນເພີ່ມກໍຕໍ່ເມື່ອເສັ້ນທາງທີສອງຕ້ອງການ proxy.
ຄວາມລົ້ມເຫຼວໃນການສ້າງເຊສຊັນ ຫຼືສົ່ງຄຳສັ່ງເປັນຂອງເສັ້ນທາງທຳອິດ. ການເປີດໜ້າເວັບຕໍ່ມາອາດລົ້ມເຫຼວໃນເສັ້ນທາງທີສອງ. ການຢືນຢັນຕົວຕົນກັບຕົວກາງຂອງໂປຣແກຣມ Java ຕ້ອງໃຊ້ວິທີທີ່ HTTP transport ນັ້ນຮອງຮັບ; callback ຢືນຢັນຕົວຕົນຂອງບຣາວເຊີບໍ່ໄດ້ຕັ້ງຄ່າໃຫ້ມັນ.