يمكن لتطبيق macOS يستخدم URLSession أن يتبع عادةً سياسة الوكيل الخاصة بالجهاز من دون أن يطلب من المستخدم إدخال الوكيل نفسه مرة أخرى. توثّق Apple أن قيمة connectionProxyDictionary الافتراضية تستخدم إعدادات النظام.

قد يقدّم مدير التنزيلات تفضيل وكيل خاصًا به، وهذا معقول. اجعل الخيار صريحًا: «استخدام إعدادات النظام» والجلسة المُهيّأة عمدًا وضعان مختلفان. ونسخ عنوان وكيل واحد حالي يخلق لقطة من المسار.

طبّق سياسة مخصّصة قبل إنشاء الجلسة. ينسخ URLSession التهيئة المقدَّمة؛ وتغيير كائن التهيئة الأصلي بعد ذلك لا يحدّث الجلسة القائمة. وعندما يغيّر المستخدم تفضيل الوكيل في التطبيق، رتّب جلسة جديدة للسياسة الجديدة وقرّر كيف ينبغي أن تنتهي الطلبات الجارية أو أن تُلغى.

بالنسبة إلى أهداف النشر المدعومة، توصي Apple الآن باستخدام proxyConfigurations بدلًا من واجهة القاموس الأقدم لأنها تدعم أنواع الوكيل والترحيل الآمنة. تحقّق من توفّر واجهة API مقابل الحد الأدنى لإصدار نظام التشغيل في التطبيق قبل اختيار تلك الواجهة.

هذا السلوك يخصّ URLSession. أما الحزمة التي تفتح مقابسها الخاصة أو تستخدم تنفيذ HTTP آخر فتحتاج إلى دعم وكيل خاص بها. حدّد ذلك النقل قبل تغيير تفضيلات النظام.

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