مجلدات بيانات مستخدم منفصلة لـ 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 مرشحين لعلم التشغيل عندما يجري ذلك الملف الشخصي طلبات مسموحًا بها لمواقع عامة.
كائن خيارات جديد ليس عملية جديدة
يمكن للبيئات المرتبطة بمجلد بيانات المستخدم نفسه أن تتشارك عملية المتصفح. إنشاء كائن آخر بذلك المجلد ليس طريقة لإسناد أعلام وكيل متعارضة له عند التشغيل.
للحصول على سياسات متزامنة عبر آلية التشغيل هذه، استخدم بيئات منفصلة بمجلدات منفصلة. وهذا يفصل أيضًا بيانات مواقعها؛ فالبيئة الثانية لا ترث تلقائيًا حالة تسجيل الدخول الخاصة بالأولى.
لإعادة استخدام المجلد الأصلي بإعدادات تشغيل جديدة، أغلق عناصر التحكم التي تتشارك عمليته ونسّق الإغلاق قبل تهيئة بديل. التخلص من عنصر تحكم بينما يبقي آخر العملية حية ليس ذلك الانتقال.
أبقِ دورة حياة البيئة والمجلد مع التطبيق. إنشاء عملية متصفح جديدة لكل طلب قد يكون أكثر تكلفة بكثير من الحفاظ على مجموعة صغيرة متعمدة من المسارات.