2012-11-26 12 views
5

एचटीएमएल 5 एप्लिकेशन कैश एपीआई ब्राउज़र को मैनिफेस्ट फ़ाइल के कैच अनुभाग में घोषित सभी फाइलों को फिर से लोड करने की आवश्यकता है (जब मैनिफेस्ट फ़ाइल बदल गई है और एप्लिकेशन कैश एपीआई पर अद्यतन कहा जाता है) ।एचटीएमएल 5 एप्लिकेशन कैश में आइटमों का चुनिंदा समाशोधन

मेरी मेनिफेस्ट फ़ाइल में हजारों प्रविष्टियां हैं। क्या ब्राउजर को केवल फाइलों को फिर से लोड करने के लिए कहने के लिए कोई चाल है?

उत्तर

4

मुझे कैश मैनिफेस्ट में सूचीबद्ध फ़ाइलों के कैशिंग व्यवहार पर नियंत्रण की कमी के कारण समान समस्याओं का सामना करना पड़ा। बाहर निकलता है IFrames का उपयोग करके आप इस प्रक्रिया पर कुछ नियंत्रण प्राप्त कर सकते हैं।

रणनीति आपकी मुख्य कैश मेनिफेस्ट में सूचीबद्ध हजारों फ़ाइलों को अलग (और अधिक प्रबंधनीय कैश प्रकट) में विभाजित करना है, फिर उनमें से प्रत्येक बहुत सारे डमी HTML पृष्ठ बनाएं, जिनमें से प्रत्येक कैश मेनिफेस्ट का संदर्भ दे। फिर, प्रत्येक डमी एचटीएमएल के लिए, आप इसे अपने मुख्य HTML दस्तावेज़ में जोड़ने के लिए एक आईफ्रेम जोड़ते हैं। आप IFrames को अदृश्य div के अंदर रख सकते हैं, जो चाल को उपयोगकर्ता के लिए अदृश्य कर देगा।

जब प्रत्येक आईफ्रेम लोड होता है, तो यह अपने व्यक्तिगत कैश मेनिफेस्ट को चेक करता है। अगर उस कैश मेनिफेस्ट में कोई भी फाइल बदल गई है, तो iFrame केवल फाइलों के उपसमूह को कैश करेगा। आप समझदारी से संबंधित फ़ाइलों को एक साथ समूहित कर सकते हैं, इस पर निर्भर करते हुए कि आप उन्हें कितनी बदलना चाहते हैं।

क्या बेहतर है कि आप उपयोगकर्ता के इंटरैक्शन के किसी भी बिंदु पर अपने मुख्य HTML पर गतिशील रूप से iFrames डालें और केवल तभी जब आईफ्रेम लोड हो जाए, तो कैशिंग प्रगति ट्रिगर हो जाएगी।

संबंधित मुद्दे