سؤال

نحن نبني تطبيق iOS يستخدم Afnetworking للاتصال بخادم يعمل Tornado.يتضمن الخادم أجيال الرأس الرأسية في الاستجابة.عند تشغيل الخادم على جهازي المحلي، يمكنني معرفة أنه يستخدم AFNetworking القيم المخزنة مؤقتا لأنه لا توجد طلبات مستلمة من قبل الخادم على الطلبات المتكررة من التطبيق.عندما ننشر نفس خادم تورنادو إلى آلة الاختبار، ينتج كل طلب من التطبيق في طلب تلقي على الخادم، وتجاهل القيمة المخزنة مؤقتا.

الفرق الوحيد بين الإعدادين هو عنوان URL للخادم وحقيقة أنه يتم الوصول إلى خادم الاختبار عبر اتصال HTTPS، في حين أن LocalHost يستخدم HTTP.هل تؤثر HTTPS على التخزين المؤقت من قبل AFNetworking، وإذا كان الأمر كذلك، كيف يمكننا الحصول على Afnetworking لاحترام رأس ذاكرة التخزين المؤقت؟

هل كانت مفيدة؟

المحلول

غير متأكد من أن سيصبح أي مساعدة ولكن هنا على أي حال: يستخدم Afnetworking NsurlConnection الذي يستخدم ذاكرة التخزين المؤقت المشتركة NSURLCACH. afnetworking شفافة تماما في اعتبار ذاكرة التخزين المؤقت ولا تفعل أي شيء محدد. طلباتي هي https وكانت مخزئة بخير فقط.

تسمح توجيهات الاستجابة الخاصة ب

التحكم في ذاكرة التخزين المؤقت لخادم الأصل لتجاوز التدليل التخزين المؤقت الافتراضي للاستجابة: نشر يشير إلى أن جميع أو جزء من رسالة الاستجابة مخصصة لمستخدم واحد ويجب عدم التخزين المؤقت بواسطة ذاكرة التخزين المؤقت المشتركة. هذا يسمح لخادم الأصل أن يذكر أن الأجزاء المحددة من مخصص الاستجابة لمستخدم واحد فقط وليس استجابة صالحة لطلبات المستخدمين الآخرين. قد تخزين ذاكرة التخزين المؤقت خاصة (غير مشتركة) الاستجابة. http://www.w3.org/protocols/rfc2616/rfc2616-sec14.html# SEC14.9.1

إذا حاول مقبول تغيير السياسة إلى الجمهور. سجل الرؤوس عند الاستجابة من التطبيق وإلقاء نظرة على cache.db الخاص بك ومعرفة ما إذا كان في الواقع شيء مخزئة هناك.

حاول تكوين ذاكرة التخزين المؤقت المشتركة - شيء على غرار

giveacodicetagpre.

قرأت جيدة أخرى عن هذا هنا http://petersteinberger.com/blogoulogoy2/nsurlcache-uses. -A-Disk-cache-as-iOS5 /

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top