بعد تهيئة CefRequestContext المقصود، اضبط تفضيل الوكيل الخاص به على خيط واجهة المستخدم في عملية المتصفح قبل بدء عمل التصفح:

auto rule = CefDictionaryValue::Create();
rule->SetString("mode", "fixed_servers");
rule->SetString("server", "http://proxy.example:8080");

auto value = CefValue::Create();
value->SetDictionary(rule);
CefString error;
bool configured = context->SetPreference("proxy", value, error);

تحقق من configured واحتفظ بالخطأ عند الفشل. يشير CanSetPreference إلى ما إذا كان التفضيل قابلًا لتعديل المستخدم؛ وقد يقفله خيار من سطر الأوامر عند بدء التشغيل أمام هذه الواجهة.

مرِّر السياق نفسه عند إنشاء المتصفح. فالسياق المهيأ غير المستخدم لا يؤثر في متصفح يعمل على السياق العام.

تحقق من العزل أيضًا. قد تتشارك السياقات حالة التخزين أو الشبكة الأساسية عبر مسارات تخزين مؤقت مشتركة أو علاقات صريحة. IsSharingWith هو الطريقة المدعومة لفحص هذا التشارك. تحتاج جلسات الوكيل المستقلة إلى سياقات وسياسة تخزين مختارة باستقلال.

يؤثر التفضيل في العمل اللاحق؛ ولا يمكنه نقل نفق قائم. أبقِ عنوان التنقل هدفًا وخادم التفضيل وسيطًا. للتصفح العام المسموح به دون تهيئة مصادقة وكيل، يمكن لقائمة وكلاء HTTP أن توفر قيم خادم HTTP مرشحة. وإذا كانت مفاتيح بدء التشغيل تملك المسار عن قصد، فحافظ على تلك السياسة بدلًا من توقع أن تتجاوزها كتابة تفضيل لاحقة. كما تتجنب واجهة سياق الطلب المدعومة إعادة بناء CefProxyHandler المحذوف.

مقالات ذات صلة