Отделни папки с потребителски данни на WebView2 за различни прокси маршрути
Използвайте отделна среда WebView2 и папка с потребителски данни за втора прокси политика при стартиране, вместо да редактирате опциите на работещ браузър.
Прокси, подадено чрез 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 прокси предлага кандидати за флага при стартиране, когато този профил ще прави разрешени заявки към публични сайтове.
Нов обект с опции не е нов процес
Среди, свързани с една и съща папка с потребителски данни, могат да споделят процеса на браузъра. Създаването на друг обект с тази папка не е начин да му се зададат противоречиви прокси флагове при стартиране.
За едновременни политики чрез този механизъм за стартиране използвайте отделни среди с отделни папки. Това разделя и данните им за сайтове; втората среда не наследява автоматично състоянието на вход на първата.
За да използвате отново оригиналната папка с нови настройки за стартиране, затворете контролите, които споделят нейния процес, и координирайте спиране преди инициализирането на замяна. Освобождаването на една контрола, докато друга поддържа процеса жив, не е този преход.
Дръжте жизнения цикъл на средата и папката заедно с приложението. Създаването на нов процес на браузъра за всяка заявка може да е много по-скъпо от поддържането на малък, умишлен набор от маршрути.