কুকিজ কি?

ওয়েবটি এমনভাবে ডিজাইন করা হয়েছে যাতে একটি ওয়েব ব্রাউজার থেকে ওয়েবসাইটে প্রতিটি অনুরোধ আলাদা থাকে। ডিজাইন অনুসারে, ওয়েবের কোনও "মেমোরি" নেই। আপনি যখনই একটি ওয়েব পৃষ্ঠা খুলবেন, তখন আপনি যে ওয়েবসাইটটি দেখছেন তা আপনার শেষ সেশনের তথ্য মনে রাখতে পারবে না। এটি ওয়েবকে দক্ষ করে তুলতে সাহায্য করে, কারণ অনুরোধ এবং প্রতিক্রিয়া ট্র্যাক করার জন্য কোনও ব্যবস্থার প্রয়োজন নেই।

কিন্তু ওয়েবের ভুলে যাওয়া প্রকৃতিও একটি সমস্যা তৈরি করে। উদাহরণস্বরূপ, আপনি যে ওয়েবসাইটে আছেন সেটি যদি আপনি কী লিখেছেন তা মনে না রাখে তাহলে একটি শপিং কার্ট কীভাবে কাজ করবে?

সেই সমস্যা সমাধানের জন্যই কুকিজ আবিষ্কার করা হয়েছিল।

কুকিজ ওয়েবসাইটগুলিকে স্মৃতি দেয়

যখন আপনি কোনও ওয়েবসাইটের কোনও পৃষ্ঠা পরিদর্শন করেন, তখন আপনার ওয়েব ব্রাউজার ওয়েবসাইটের সার্ভারে পৃষ্ঠায় অন্তর্ভুক্ত সংস্থানগুলির জন্য অনুরোধ করে, যেমন HTML, CSS, JavaScript, অথবা ছবি।

ওয়েব ব্রাউজার এবং ওয়েবসাইটগুলি HTTP প্রোটোকল অনুসরণ করে ইন্টারঅ্যাক্ট করে। এটি যোগাযোগের জন্য একটি প্রমিত নিয়মের সেট

কোনও রিসোর্সের জন্য HTTP অনুরোধের প্রতিক্রিয়ায়, ওয়েবসাইট সার্ভার রিসোর্সের সাথে হেডার নামক অতিরিক্ত তথ্য অন্তর্ভুক্ত করতে পারে। HTTP রেসপন্সের সাথে অন্তর্ভুক্ত একটি Set-Cookie হেডার আপনার ব্রাউজারকে কিছু টেক্সট সংরক্ষণ করতে বলে: একটি নাম এবং একটি মান। এটি একটি কুকি নামে পরিচিত। উদাহরণস্বরূপ, রেসপন্স হেডার Set-Cookie: cat=tabby আপনার ব্রাউজারকে "cat" নাম এবং "tabby" মান সহ একটি কুকি সংরক্ষণ করতে বলে।

একবার সেই কুকি সেট হয়ে গেলে, আপনার ব্রাউজার থেকে ওয়েবসাইটে পরবর্তী অনুরোধগুলিতে Cookie: cat=tabby " শিরোনামটি অন্তর্ভুক্ত থাকবে। ওয়েবসাইটের সার্ভার অনুরোধ শিরোনাম থেকে কুকি অ্যাক্সেস করতে পারে এবং মানটি ব্যবহার করতে পারে।

কুকিজ কীভাবে কাজ করে: ধাপে ধাপে

কল্পনা করুন আপনি cats.example ওয়েবসাইটটি পরিদর্শন করেছেন। সাইটটি আপনাকে একটি বিড়ালের এলোমেলো ছবি দেখাতে চায় এবং কোন বিড়ালটি আপনাকে দেখানো হয়েছিল তার একটি রেকর্ড রাখতে চায়।

নিম্নলিখিত ধাপগুলি ব্যাখ্যা করে যে কীভাবে কুকিজ দিয়ে এটি করা যেতে পারে।

১. ব্রাউজার একটি ফাইলের অনুরোধ করে

আপনি cats.example ওয়েবসাইটের হোমপেজে যান।

আপনার ব্রাউজারটি হোমপেজ HTML প্রক্রিয়া করার পরে, এটি পৃষ্ঠার ফাইলগুলি অনুরোধ করে, যার মধ্যে cats.example থেকে cat.jpg ও অন্তর্ভুক্ত।

https://cats.example/cat.jpg-এ একটি HTTP অনুরোধ

2. ওয়েবসাইট সার্ভার সাড়া দেয়

cats.example এর সার্ভারটি cat.jpg ইমেজ ফাইলের সাথে সাড়া দেয়।

প্রতিক্রিয়ার সাথে, সার্ভারে একটি হেডার অন্তর্ভুক্ত থাকে: Set-Cookie: cat=tabby

https://cats.example/cat.jpg থেকে একটি HTTP প্রতিক্রিয়া, একটি Set-Cookie: cat=tabby হেডার সহ

৩. ব্রাউজার প্রতিক্রিয়া পায়

আপনার ব্রাউজারটি ইমেজ ফাইলটি গ্রহণ করে এবং এর সাথে অন্তর্ভুক্ত Set-Cookie: cat=tabby হেডারটি প্রক্রিয়া করে।

একটি কুকি সংরক্ষণ করা হয়: নাম cat , মান tabby

ল্যাপটপের ওয়েব ব্রাউজারে কুকি ক্যাট=ট্যাবি।

৪. ব্রাউজার অতিরিক্ত অনুরোধ করে

এখন থেকে, আপনার ব্রাউজারে Cookie: cat=tabby শিরোনামটি থাকবে, যার সাথে requests to cats.example লেখা থাকবে।

https://cats.example/cat.jpg-এ একটি HTTP অনুরোধ, যার মধ্যে একটি কুকি রয়েছে: cat=tabby header

যখন cats.example ওয়েব সার্ভার একটি অনুরোধ পায়, তখন এটি কুকিটি প্রক্রিয়া করতে পারে এবং সেই মান দিয়ে যা ইচ্ছা তাই করতে পারে—যেমন নিশ্চিত করা যে এটি আপনাকে আবার একই ট্যাবি বিড়ালের ছবি না পাঠায়।

কুকি তৈরির পুরো প্রক্রিয়াটি এখানে:

  1. আপনার ব্রাউজার একটি ওয়েবসাইটের সার্ভার থেকে একটি ফাইলের অনুরোধ করে।
  2. সার্ভারে অনুরোধের জবাবে পাঠানো ফাইলের সাথে Set-Cookie: cat=tabby এর মতো একটি হেডার অন্তর্ভুক্ত থাকতে পারে।
  3. যখন আপনার ব্রাউজার প্রতিক্রিয়াটি পায়, তখন এটি কুকি সংরক্ষণ করে।
  4. প্রতিটি পরবর্তী অনুরোধের সাথে, আপনার ব্রাউজারটি একটি Cookie: cat=tabby হেডারে সার্ভারে কুকি পাঠায়।


একটি ওয়েব ব্রাউজার, cats.example, এবং cats.example-এর মধ্যে অনুরোধ এবং প্রতিক্রিয়া দেখানো সিকোয়েন্স ডায়াগ্রাম, যা দেখায় কিভাবে কুকিজ সেট এবং প্রেরণ করা হয়।

জাভাস্ক্রিপ্ট ব্যবহার করে কুকিজ অ্যাক্সেস করুন

পূর্ববর্তী উদাহরণে কুকি সেট করার জন্য Set-Cookie রেসপন্স হেডার ব্যবহার করা হয়েছে।

document.cookie পদ্ধতি ব্যবহার করে জাভাস্ক্রিপ্ট দিয়েও কুকি তৈরি করা যেতে পারে।

ডেমোটি ব্যবহার করে দেখুন: javascript-cookie.glitch.me

আরও জানুন: ডকুমেন্ট: কুকি প্রপার্টি

আমাদের কুকিজ কেন দরকার?

১৯৯৪ সালে, ইঞ্জিনিয়ার লু মন্টুলি সফটওয়্যার কোম্পানি নেটস্কেপে কাজ করছিলেন, যা ১৯৯০-এর দশকের মাঝামাঝি সময়ে সবচেয়ে জনপ্রিয় ওয়েব ব্রাউজার তৈরি করেছিল। ইতিমধ্যে, একটি টেলিকম কর্পোরেশন, MCI, বিশ্বের প্রথম অনলাইন স্টোরগুলির মধ্যে একটির জন্য একটি শপিং কার্ট তৈরি করার চেষ্টা করছিল। MCI তাদের সমস্যা ব্যাখ্যা করার জন্য মন্টুলির সাথে যোগাযোগ করে। মন্টুলি HTTP-তে একটি বৈশিষ্ট্য যুক্ত করে প্রতিক্রিয়া জানান যা একটি সাইটকে ব্যবহারকারীর ওয়েব ব্রাউজারে অল্প পরিমাণে টেক্সট, একটি নাম এবং একটি মান সংরক্ষণ করতে সক্ষম করে: cart-id=123 এর মতো কিছু। তিনি এটিকে "কুকি" বলেছিলেন, কারণ সেই সময়ে প্রোগ্রামাররা ডেটা যোগাযোগের সাথে অন্তর্ভুক্ত অতিরিক্ত তথ্যের একটি ছোট অংশের জন্য "ম্যাজিক কুকি" শব্দটি ব্যবহার করতেন।

মন্টুলি এক সপ্তাহেরও কম সময়ের মধ্যে তার HTTP কুকির কাজ সম্পন্ন করেন। তিনি জানতেন না যে কুকিজ বিজ্ঞাপন, লগ-ইন, অর্থপ্রদান এবং জালিয়াতি সনাক্তকরণ সহ গুরুত্বপূর্ণ ওয়েব প্ল্যাটফর্ম বৈশিষ্ট্যগুলির জন্য মৌলিক হয়ে উঠবে। কুকিজ একটি আপাতদৃষ্টিতে সহজ প্রযুক্তি যার সুদূরপ্রসারী পার্শ্ব প্রতিক্রিয়া রয়েছে।

কুকিজের ব্যবহার

কুকিজ ব্রাউজারকে ব্যবহারকারী সম্পর্কে অল্প পরিমাণে তথ্য সংরক্ষণ করতে দেয়, যাতে একাধিক অনুরোধের মাধ্যমে কিছু "মনে রাখা" যায়। কুকিজের একাধিক ব্যবহার রয়েছে:

  • সেশন ব্যবস্থাপনা
    একটি ওয়েবসাইটকে একজন ব্যবহারকারীকে চিনতে অনুমতি দিন, উদাহরণস্বরূপ বিভিন্ন পৃষ্ঠা জুড়ে লগ-ইন অবস্থা বজায় রাখার জন্য।
  • ব্যক্তিগতকরণ
    ওয়েবসাইটের অভিজ্ঞতা কাস্টমাইজ করার জন্য ব্যবহারকারীর পছন্দ যেমন ভাষা, থিম, অথবা সম্প্রতি দেখা আইটেম সংরক্ষণ করুন।
  • ট্র্যাকিং
    ঐতিহাসিকভাবে, ওয়েবসাইট জুড়ে ব্যবহারকারীর আচরণ ট্র্যাক করার জন্য, লক্ষ্যবস্তু বিজ্ঞাপন এবং অন্যান্য ব্যবহারের ক্ষেত্রে কুকিজ ব্যবহার করা হয়েছে।

কুকিজ মূলত তথ্য সরাসরি সংরক্ষণের পরিবর্তে শনাক্তকারীর জন্য ব্যবহৃত হয়।

উদাহরণস্বরূপ, একটি অনলাইন পোষা প্রাণীর দোকানে আপনার শপিং কার্টের জন্য একটি কুকি পণ্য তালিকাভুক্ত করবে না, বরং একটি অ্যাকাউন্ট আইডি প্রদান করবে যা পোষা প্রাণীর দোকানটিকে তার সার্ভার-সাইড ডেটা স্টোরেজে আপনার কার্টে কী আছে তা দেখতে দেবে।

পোষা প্রাণীর দোকানের সার্ভারের কাছে একটি অনুরোধে এইরকম একটি কুকি হেডার অন্তর্ভুক্ত থাকতে পারে:

Cookie: _cart=CART1.2.34567890.123456789

এরপর সার্ভারটি তার ডেটাস্টোরে _cart অ্যাকাউন্টটি দেখতে পারে এবং অনুরোধ সম্পর্কে অন্যান্য তথ্য অন্তর্ভুক্ত করতে পারে।

আরও জানুন