ایچ تی ام 5 آپلی کیشن کی ذخیرہ شدگی
- پچھلے پہلہ ذخیرهسازی وبسایت HTML5
- آئندہ پہلہ Web Workers HTML5
آپلی کیشن کی ذخیرہ شدگی کا استعمال کریں، ذخیرہ شدگی منیفیسٹ فائل کی تخلیق کے ذریعہ ویب اپلی کیشن کی آف لائن ورژن کو آسان طور پر تخلیق کیا جاسکتا ہے。
آپلی کیشن کی ذخیرہ شدگی کیا ہے؟
ایچ تی ام 5 نے آپلی کیشن کی ذخیرہ شدگی (ایپلی کیشن کیش) لایا، یعنی ویب اپلی کیشن کو ذخیرہ کیا جاسکتا ہے اور انٹرنیٹ کنکشن کے بغیر بھی استعمال کیا جاسکتا ہے。
آپلی کیشن کی ذخیرہ شدگی کے ذریعہ آپلی کیشن کو تین فائدوں کی حامل آتا ہے:
- آف لائن براوزنگ - استعمال کنندگان کا اپلی کیشن آف لائن رہتے ہوئے استعمال کرسکتے ہیں
- رفتار - ذخیرہ شدہ ریسورسز کو تیز تر لوڈ کیا جاتا ہے
- کم کرنہ سرور کا بوجھ - براوزر صرف اپدیت یا تبدیل شدہ ریسورسز کو سرور سے ڈاؤن لوڈ کرے گا
براوزر کی حمایت
جداول میں شمارا تیکنو لوگ جو ایپلی کیشن کچ کاری کو پورا طور پر استعمال کئے جانے والے پہلے براوزر کی نسلیں کا مطلب دیتا ہے۔
ای پی آئی | |||||
ایپلی کیشن کچ | 4.0 | 10.0 | 3.5 | 4.0 | 11.5 |
ایچ تی ایم ال کیش منیفست مثال
ایک مثال دکھائیں گا جو کچ منیفست والا ایچ تی ایم ایل مستند دکھاتا ہے (برائے آن لائن دیکھنے):
مثال
!DOCTYPE HTML <html manifest="demo.appcache"> <body> مستند کا مواد ...... </body> </html>
کیش منیفست بنیادی
اگر آپ اپلی کیشن کچ کاری کو فعال کرنا چاہتے ہیں تو <html> تگ میں منیفست خاصیت شامل کریں:
!DOCTYPE HTML <html manifest="demo.appcache"> ... </html>
تمام منیفست کا حامل پیج جب یوزر اس پر رسائی کرتا ہے تو اس کا کچ میں رکھا جائے گا۔ اگر منیفست کی خاصیت کو نہیں طے کیا جائے تو پیج کچ میں نہیں رکھا جائے گا (مگر منیفست فائل میں اس پیج کو براہ راست درج نہیں کیا جائے گا)۔
منیفست فائل کا سفارشی فائل ایکسٹینشن یہ ہے: ".appcache"۔
توجہ:منیفست فائل کو صحیح ایم آئی تائپ کو قائم رکھنا چاہئیے، یعنی "text/cache-manifest"۔ یہ ویب سروسر پر قائم کیا جانا چاہئیے۔
منیفست فائل
منیفست فائل ایک سادے ٹیکسٹ فائل ہے، جو براوزر کو بتاتا ہے کہ کس مطلب میں کچ میں رکھا جائے گا (اور کس مطلب میں نہیں رکھا جائے گا)۔
منیفست فائل کے تین حصتیں ہیں:
- کیش منیفست - اس عنوان کے نیچے درج فائلوں کو پہلی ڈاؤن لوڈ کے بعد کچ میں رکھا جائے گا
- نیٹورک - اس عنوان کے نیچے درج فائلوں کو سروسر کے ساتھ کڑی جائے گا، جو کچ کیا نہیں جائیں گا
- فال اوبک - اس عنوان کے نیچے درج فائلوں کو جب ویب پینج کا رسائی نہیں ہوسکتی تو ریٹرن پینج (مثلاً 404 پینج) کے طور پر استعمال کیا جائے گا
CACHE MANIFEST
پہلی لائن، CACHE MANIFEST، ضروری ہے:
CACHE MANIFEST /theme.css /logo.gif /main.js
بالآمد منیفست فائل تین وسائل کا سفر لگاتار رکھتا ہے: ایک سی ایس ایس فائل، ایک جی ایف آئی تصویر اور ایک جاوا اسکریپٹ فائل۔ جب منیفست فائل لوڈ ہو جائے گا، تو براوزر ویب سائٹ کی ریشه ڈایرکٹری سے ان تین فائلوں کو ڈاؤن لوڈ کرے گا۔ بعد ازاں، جب بھی یوزر انٹرنیٹ سے کھلنا ختم کرے گا، یہ وسائل ابھی بھی استعمال کئے جائیں گے۔
نیٹورک
نیٹورک حصے کا مطلب یہ ہے کہ فائل "login.php" کو کبھی کچ کیا نہیں جائے گا اور آن لائن نہیں استعمال کیا جائے گا:
NETWORK: login.asp
可以使用星号来指示所有其他其他资源/文件都需要因特网连接:
NETWORK: * FALLBACK
下面的 FALLBACK 部分规定如果无法建立因特网连接,则用 "offline.html" 替代 /html/ 目录中的所有文件:
FALLBACK: /html/ /offline.html
注释:第一个 URI 是资源,第二个是替补。
更新缓存
一旦应用被缓存,它就会保持缓存直到发生下列情况:
- 用户清空浏览器缓存
- manifest 文件被修改(参阅下面的提示)
- 由程序来更新应用缓存
实例 - 完整的 Cache Manifest 文件
CACHE MANIFEST # 2012-02-21 v1.0.0 /theme.css /logo.gif /main.js NETWORK: login.asp FALLBACK: /html/ /offline.html
提示:以 "#" 开头的是注释行,但也可满足其他用途。应用的缓存只会在其 manifest 文件改变时被更新。如果您编辑了一幅图像,或者修改了一个 JavaScript 函数,这些改变都不会被重新缓存。更新注释行中的日期和版本号是一种使浏览器重新缓存文件的办法。
关于应用程序缓存的注意事项
请留心缓存的内容。
一旦文件被缓存,则浏览器会继续展示已缓存的版本,即使您修改了服务器上的文件。为了确保浏览器更新缓存,您需要更新 manifest 文件。
注释:浏览器对缓存数据的容量限制可能不太一样(某些浏览器的限制是每个站点 5MB)。
- پچھلے پہلہ ذخیرهسازی وبسایت HTML5
- آئندہ پہلہ Web Workers HTML5