এইচটিএমএল অ্যাপক্যাশ (HTML AppCache)

এইচটিএমএল এপিআই (HTML API) - এইচটিএমএল (HTML) - Web Development

372

এপ্লিকেশন ক্যাশ ওয়েব স্ট্যান্ডার্ড থেকে বাদ দেওয়া হয়েছে। যদিও কিছু ব্রাউজারে এখনো সাপোর্ট করে, এটি ব্যবহার থেকে বিরত থাকুন।

এর পরিবর্তে Service Workers ব্যবহার করুন।


এইচটিএমএল(৫) ক্যাশ মানে হচ্ছে একটি ওয়েব এপ্লিকেশনকে ক্যাশ করা এবং ইন্টারনেট কানেকশন ছাড়াই একে এক্সেস করা।

এপ্লিকেশন ক্যাশের তিনটি সুবিধাঃ

  1. অফলাইন ব্রাউজিং - ইউজার অফলাইনে থাকলেও এপ্লিকেশনটি ব্যবহার করতে পারবে
  2. গতি - ক্যাশড ডেটা দ্রুত লোড হয়
  3. সার্ভার লোড কমিয়ে আনে - ব্রাউজার শুধুমাত্র আপডেটেড/চেঞ্জড ডেটা ডাউনলোড করবে

ব্রাউজার সাপোর্ট

বর্তমান সময়ের অধিকাংশ ব্রাউজারেই জিওলোকেশন সাপোর্ট করে। ক্রোম ৪.০, ইন্টারনেট এক্সপ্লোরার ১০.০, ফায়ারফক্স ৩.৫, সাফারি ৪.০ এবং অপেরা ১১.৫ ভার্সন থেকে এপ্লিকেশন ক্যাশ সাপোর্ট করে।


এইচটিএমএল ক্যাশ ম্যানিফেস্ট

নিচের উদাহরণটিতে ক্যাশ ম্যানিফেস্টসহ একটি এইচটিএমএল ডকুমেন্ট দেখানো হলোঃ

উদাহরণ

 

kt_satt_skill_example_id=1753

 


ক্যাশ ম্যানিফেস্ট বেসিক

এপ্লিকেশন ক্যাশ চালু করার জন্য আপনাকে manifest এট্রিবিউটটি ডকুমেন্টের <html> ট্যাগে ব্যবহার করতে হবেঃ

< html manifest="demo.appcache" >

আমরা যেসকল পেজকে ক্যাশ করতে চাই সেসকল পেজে manifest এট্রিবিউটটি ব্যবহার করবো। .appcache হচ্ছে মেনিফেস্ট ফাইলের এক্সটেশন। মেনিফেস্ট ফাইলের মিডিয়া টাইপ হচ্ছে "text/cache-manifest"


মেনিফেস্ট ফাইল

মেনিফেস্ট ফাইল সাধারণ একটি টেক্সট ফাইল, যার মধ্যে ব্রাউজারের ক্যাশ করার নির্দেশিকা দেওয়া থাকে।

মেনিফেস্ট ফাইলের তিনটি সেকশন আছেঃ

  • CACHE MANIFEST - প্রথমবার ডাউনলোড হবার পর এই হেডারের নিচের ফাইলগুলোকে ক্যাশ করা হবে
  • NETWORK - এই হেডারের নিচের ফাইলগুলোর জন্য সার্ভার কানেকশন লাগে এবং এরা কখনই ক্যাশড হবে না
  • FALLBACK - এই হেডারের নিচের ফাইলগুলো কোন পেজ এক্সেস করা না গেলে ফলব্যাক পেজ হিসেবে কাজ করে

CACHE MANIFEST

প্রথমে CACHE MANIFEST লাইনটি অবশ্যই লিখতে হবেঃ

CACHE MANIFEST
/main.css
/satt.gif
/main.js

 

উপরের মেনিফেস্ট ফাইলে তিনটি ফাইল আছেঃ একটি সিএসএস ফাইল, একটি GIF ইমেজ এবং একটি জাভাস্ক্রিপ্ট ফাইল। মেনিফেস্ট ফাইলটি লোড হলে ব্রাউজার ওয়েবসাইট থেকে তিনটি ফাইল ডাউনলোড করে নিবে। পরবর্তীতে ইন্টারনেট কানেকশন ছাড়াও এই ফাইলগুলোকে এক্সেস করা যাবে।

NETWORK

নিচের NETWORK সেকশন বুঝায় "login.php" ফাইলকে কখনই ক্যাশ করা যাবে না। তার মানে এই ফাইলটি ইন্টারনেট কানেকশন ছাড়া এক্সেস করা যাবে নাঃ

NETWORK:
login.php

 

একটি এস্টেরিক সাইন দ্বারা অন্যান্য সকল ফাইলের জন্য ইন্টারনেট কানেকশন লাগবে বুঝাতে ব্যবহার হয়ঃ

NETWORK:
*

 

FALLBACK

নিচের FALLBACK সেকশন দিয়ে বুঝায় যদি ইন্টারনেট কানেকশন না থাকে তবে "offline.html" সকল পেজের ফলব্যাক পেজ হিসেবে কাজ করবেঃ

FALLBACK:
/offline.html

 


ক্যাশ আপডেট

নিচের যেকোন একটি ঘটনা না ঘটলে ক্যাশ করা ফাইলটি আপডেট হয় নাঃ

  • ইউজার ব্রাউজার ক্যাশ মুছে দিলে
  • মেনিফেস্ট ফাইল পরিবর্তন করা হলে
  • এপ্লিকেশন যদি প্রোগ্রামেটিক্যালি আপডেট হয়

একটি সম্পূর্ণ ক্যাশ মেনিফেস্ট ফাইল

CACHE MANIFEST
# 2017-02-21 v1.0.0
/theme.css
/logo.gif
/main.js

NETWORK:
login.php

FALLBACK:
/offline.html


 

Content added By
Promotion

Are you sure to start over?

Loading...