پروکسی‌ای که از طریق AdditionalBrowserArguments ارائه می‌شود بخشی از فرمان راه‌اندازی فرایند مرورگر WebView2 می‌شود. ویرایش بعدی آن شیء گزینه‌ها خط فرمان فرایند در حال اجرا را بازنویسی نمی‌کند.

برای یک برنامه .NET که مسیر مستقلی ایجاد می‌کند، پیش از مقداردهی اولیه کنترل، پوشه داده کاربری متعلق به برنامه انتخاب کنید:

var options = new Microsoft.Web.WebView2.Core.CoreWebView2EnvironmentOptions
{
    AdditionalBrowserArguments = "--proxy-server=http://proxy.example:8080"
};
var environment = await Microsoft.Web.WebView2.Core.CoreWebView2Environment
    .CreateAsync(userDataFolder: profileFolder, options: options);
await browser.EnsureCoreWebView2Async(environment);

profileFolder یک پوشه قابل نوشتن است که برنامه انتخاب می‌کند، و browser کنترل WebView2 موجود و مقداردهی‌نشده است. مقداردهی اولیه را از طریق چرخه عمر ناهمگام معمول رابط کاربری اجرا کنید. فهرست پروکسی HTTP وقتی آن نمایه درخواست‌های مجاز به سایت‌های عمومی انجام دهد، گزینه‌هایی برای پرچم راه‌اندازی ارائه می‌کند.

شیء گزینه‌های جدید یک فرایند جدید نیست

محیط‌های مرتبط با یک پوشه داده کاربر می‌توانند فرایند مرورگر را به اشتراک بگذارند. ایجاد شیء دیگری با آن پوشه راهی برای اختصاص پرچم‌های پروکسی متناقض در زمان راه‌اندازی به آن نیست.

برای سیاست‌های هم‌زمان از طریق این سازوکار راه‌اندازی، از محیط‌های جداگانه با پوشه‌های جداگانه استفاده کنید. این کار داده‌های وب‌سایت آن‌ها را نیز جدا می‌کند؛ محیط دوم به‌طور خودکار وضعیت ورود محیط اول را به ارث نمی‌برد.

برای استفاده دوباره از پوشه اصلی با تنظیمات راه‌اندازی جدید، کنترل‌هایی را که فرایند آن را به اشتراک می‌گذارند ببندید و پیش از مقداردهی اولیه جایگزین، خاموش‌شدن را هماهنگ کنید. آزادکردن یک کنترل در حالی که دیگری فرایند را زنده نگه می‌دارد، آن گذار نیست.

چرخه عمر محیط و پوشه را همراه برنامه نگه دارید. ایجاد یک فرایند مرورگر تازه برای هر درخواست می‌تواند بسیار پرهزینه‌تر از نگهداری مجموعه کوچکی از مسیرهای عامدانه باشد.

مقالات مرتبط