프록시 경로별로 분리된 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 컨트롤입니다. UI의 일반 비동기 수명 주기를 통해 초기화를 실행하십시오. HTTP 프록시 목록은 해당 프로필이 허용된 공개 사이트 요청을 수행할 때 시작 플래그의 후보를 제공합니다.
새 옵션 개체는 새 프로세스가 아닙니다
같은 사용자 데이터 폴더와 연결된 환경은 브라우저 프로세스를 공유할 수 있습니다. 그 폴더로 다른 개체를 만드는 것은 상충하는 시작 시 프록시 플래그를 할당하는 방법이 아닙니다.
이 시작 메커니즘으로 동시 정책을 사용하려면 폴더가 다른 별도의 환경을 사용하십시오. 그러면 사이트 데이터도 분리됩니다. 두 번째 환경은 첫 번째의 로그인 상태를 자동으로 상속하지 않습니다.
원래 폴더를 새 시작 설정으로 다시 사용하려면 그 프로세스를 공유하는 컨트롤을 닫고 교체를 초기화하기 전에 종료를 조정하십시오. 한 컨트롤을 삭제해도 다른 컨트롤이 프로세스를 유지하면 그 전환이 아닙니다.
환경과 폴더의 수명 주기를 애플리케이션과 함께 유지하십시오. 요청마다 새 브라우저 프로세스를 만드는 것은 작고 의도적으로 선택한 경로 집합을 유지하는 것보다 훨씬 비쌀 수 있습니다.