Selenium JavaScript: دور دراز WebDriver کمانڈ کنکشن کو پراکسی سے گزارنا
دور دراز Selenium اینڈ پوائنٹ پر بھیجے جانے والے JavaScript WebDriver کمانڈز کے لیے usingWebDriverProxy استعمال کریں۔
JavaScript Selenium اسکرپٹ اس سرور کے براؤزر کے کہیں بھی جانے سے پہلے دور دراز سرور کو WebDriver کمانڈز بھیجتی ہے۔ اگر کمانڈ کنکشن کو HTTP پراکسی سے گزرنا ہو تو Builder کی WebDriver پراکسی ترتیب دیں:
const { Builder, Browser } = require("selenium-webdriver");
const driver = await new Builder()
.forBrowser(Browser.CHROME)
.usingServer(gridUrl)
.usingWebDriverProxy("http://proxy.example.net:8080")
.build();gridUrl اصل Selenium سرور یا ہوسٹ شدہ WebDriver اینڈ پوائنٹ ہے۔ ایسے عوامی طور پر قابل رسائی اینڈ پوائنٹ کے لیے جہاں یہ راستہ اجازت یافتہ ہو، HTTP پراکسی فہرست usingWebDriverProxy کے لیے امیدوار فراہم کرتی ہے۔ یہ حصہ async CommonJS فعل کے اندر چلائیں۔ ٹیسٹ سیشن ختم ہونے پر driver بند کریں۔
usingWebDriverProxy JavaScript بائنڈنگ کے HTTP کنکشنز کو کنٹرول کرتا ہے۔ یہ Chrome کی پراکسی صلاحیت یا Chrome لانچ آرگیومنٹ مقرر نہیں کرتا۔
اگر براؤزر کی ٹریفک کو بھی بیچ میں آنے والا درکار ہو تو مطلوبہ Chrome اختیارات الگ فراہم کریں۔ وہ براؤزر دور دراز مشین پر چلتا ہے، اس لیے اس کا پراکسی اینڈ پوائنٹ وہاں قابل رسائی ہونا چاہیے۔ اسکرپٹ کی مشین پر loopback پتہ خود بخود دور دراز براؤزر کے لیے دستیاب loopback سروس نہیں ہوتا۔
مشخص کریں کہ ناکامی WebDriver سیشن بناتے وقت ہوتی ہے یا ویب سائٹ پر نیویگیٹ کرتے وقت۔ دونوں ناکامیوں میں مختلف نیٹ ورک کلائنٹس اور مختلف پراکسی پالیسیاں شامل ہو سکتی ہیں۔