স্টোরেজ অ্যাক্সেস API-এর মাধ্যমে নন-কুকি স্টোরেজ অ্যাক্সেসের জন্য অরিজিন ট্রায়ালে অংশগ্রহণ করুন

হেলেন চো
Helen Cho
আরি চিভুকুলা
Ari Chivukula

Chrome 115 তৃতীয় পক্ষের প্রেক্ষাপটে বিভাজন করে স্টোরেজ, পরিষেবা কর্মী এবং যোগাযোগ API-এ পরিবর্তন এনেছে। একই-অরিজিন নীতি দ্বারা বিচ্ছিন্ন হওয়ার পাশাপাশি, তৃতীয়-পক্ষের প্রসঙ্গে ব্যবহৃত প্রভাবিত APIগুলিও শীর্ষ-স্তরের প্রসঙ্গ সাইট দ্বারা বিচ্ছিন্ন করা হয়।

যে সাইটগুলি তৃতীয় পক্ষের স্টোরেজ পার্টিশনের জন্য সমর্থন বাস্তবায়নের জন্য সময় পায়নি তারা অস্থায়ীভাবে বিভাজন করার জন্য একটি অবচয় ট্রায়ালে অংশ নিতে সক্ষম হয় (একই-অরিজিন নীতি দ্বারা বিচ্ছিন্নতা চালিয়ে যান তবে শীর্ষ-স্তরের সাইট দ্বারা বিচ্ছিন্নতা সরিয়ে দিন) এবং এর পূর্বের আচরণ পুনরুদ্ধার করতে পারে স্টোরেজ, পরিষেবা কর্মী, এবং যোগাযোগ API, তাদের সাইটে এমবেড করা সামগ্রীতে। 3 সেপ্টেম্বর, 2024-এ Chrome 127-এর রিলিজের সাথে এই অবচয় ট্রায়ালের মেয়াদ শেষ হতে চলেছে৷ মনে রাখবেন যে এটি তৃতীয় পক্ষের কুকিগুলিতে অ্যাক্সেসের জন্য অবচয় ট্রায়াল থেকে আলাদা: এটি শুধুমাত্র স্টোরেজ অ্যাক্সেসের জন্য৷

থার্ড-পার্টি নন-কুকি স্টোরেজ পার্টিশনিং দ্বারা ব্যাহত কিছু ব্যবহারের ক্ষেত্রে একটি দীর্ঘমেয়াদী সমাধান হিসাবে, Chrome তৃতীয় পক্ষের জন্য স্টোরেজ অ্যাক্সেস API (কুকি এবং নন-কুকি উভয়) স্টোরেজ/কমিউনিকেশন অ্যাক্সেসের অনুরোধ করার ক্ষমতা প্রস্তাব করছে। Chrome 117 অনুযায়ী শিপিং ), যা ইতিমধ্যেই তৃতীয় পক্ষকে কুকি অ্যাক্সেসের অনুরোধ করার অনুমতি দেয়৷

Chrome 120 অনুসারে, এই প্রস্তাবটি একটি অরিজিন ট্রায়ালের মাধ্যমে পরীক্ষার জন্য উপলব্ধ হবে৷ ডেভেলপারদের এই অরিজিন ট্রায়ালে অংশগ্রহণ করা উচিত যাতে প্রস্তাবিত সমাধানটি কীভাবে তাদের ব্যবহারের ক্ষেত্রে মোকাবেলা করে তা নিশ্চিত করতে যে তারা অবচয় ট্রায়াল শেষ হওয়ার আগে প্রস্তুত হয়।

মূল ট্রায়াল বিবরণ

Chrome 120 থেকে শুরু করে, Chrome একটি তৃতীয় পক্ষের প্রেক্ষাপটে অ-বিভাজনকৃত সঞ্চয়স্থানে (কুকি এবং নন-কুকি) অ্যাক্সেসের অনুমতি দেওয়ার জন্য স্টোরেজ অ্যাক্সেস API (পিছনে সামঞ্জস্যপূর্ণ) এর প্রস্তাবিত এক্সটেনশন সক্ষম করতে একটি অরিজিন ট্রায়াল , StorageAccessAPIBeyondCookies সমর্থন করবে।

মেকানিক্স

API নিম্নরূপ ব্যবহার করা যেতে পারে (একটি এমবেডেড আইফ্রেমে জাভাস্ক্রিপ্ট চলছে):

// Request a new storage handle via rSA (this should prompt the user)
const handle = await document.requestStorageAccess({all: true});
// Write some 1P context sessionStorage
handle.sessionStorage.setItem('userid', '1234');
// Write some 1P context localStorage
handle.localStorage.setItem('preference', 'A');
// Open or create an indexedDB that is shared with the 1P context
const messageDB = handle.indexedDB.open('messages');
// Use locks shared with the 1P context
await handle.locks.request('example', ...);

আপনি যদি all অ্যাক্সেসের পরিবর্তে শুধুমাত্র নির্দিষ্ট API অ্যাক্সেস চান তবে আপনি আপনার প্রয়োজনীয় API হ্যান্ডেলগুলির নাম পাস করতে পারেন। উদাহরণস্বরূপ, আপনি সেশন স্টোরেজ অ্যাক্সেস পেতে {sessionStorage: true} পাস করতে পারেন, অথবা IndexedDB এবং ওয়েব লকগুলিতে অ্যাক্সেস পেতে {indexedDB: true, locks:true} পাস করতে পারেন।

এই অতিরিক্ত এক্সটেনশনটিকে কল করার বাইরে, নন-কুকি স্টোরেজের অ্যাক্সেস স্টোরেজ অ্যাক্সেস API এর মাধ্যমে কুকি অ্যাক্সেসের জন্য বর্তমান প্রয়োজনীয়তার সাথে মেলে। উদাহরণ স্বরূপ, Chrome-এ, কোন প্রম্পট দেখানো হয় না যখন মূল একই সম্পর্কিত ওয়েবসাইট সেটে থাকে (RWS, প্রথম পক্ষের সেটের নতুন নাম)। একই RWS-এর অংশ নয় এমন উৎপত্তিগুলি Chrome-এ স্টোরেজ অ্যাক্সেস API-এর প্রম্পটিং প্রয়োজনীয়তার সাপেক্ষে হবে।

সময়কাল

অরিজিন ট্রায়াল Chrome 120 থেকে Chrome 125 পর্যন্ত (অথবা যেকোন মাইলফলক 6 আগস্ট, 2024 এর পরে) পাওয়া যাবে।

ব্যাপ্তি

Chrome 120-এ শুধুমাত্র DOM স্টোরেজ (সেশন এবং স্থানীয় স্টোরেজ), ইন্ডেক্সড ডিবি এবং ওয়েব লক পাওয়া যায়।

ক্রোম 121-এ ক্যাশে স্টোরেজ, অরিজিন প্রাইভেট ফাইল সিস্টেম, কোটা, ব্লব স্টোরেজ এবং ব্রডকাস্ট চ্যানেল যোগ করা হয়েছে।

শেয়ার্ড ওয়ার্কার এবং কুকিজ অন্তর্ভুক্তির উপর নিয়ন্ত্রণ Chrome 123 এ যোগ করা হয়েছে।

ডেডিকেটেড ওয়ার্কাররা ক্রোম 120 হিসাবে কর্মী তৈরির আগে requestStorageAccess কল করা হলে পার্টিশনবিহীন কুকিগুলিতে অ্যাক্সেস পায় (এর জন্য স্টোরেজ অ্যাক্সেস API হ্যান্ডেল ব্যবহার করার প্রয়োজন নেই)।

অংশগ্রহণ করুন

  1. তৃতীয় পক্ষের প্রসঙ্গে আপনি কীভাবে কুকি এবং নন-কুকি স্টোরেজ ব্যবহার করেন তা মূল্যায়ন করুন। উদাহরণ ব্যবহারের ক্ষেত্রে এই প্রস্তাবটি আপনার প্রয়োজনের সাথে মানানসই কিনা তা বুঝতে সাহায্য করতে পারে।
  2. ক্রোম সংস্করণ 120 (বা পরবর্তী) চালু করুন এবং পরীক্ষা-তৃতীয়-পক্ষ-কুকি-ফেজআউট পতাকা সক্ষম করা আছে তা নিশ্চিত করুন।
  3. আপনি যদি প্রথমে একটি অরিজিন ট্রায়াল টোকেন সেট আপ না করে স্থানীয়ভাবে বৈশিষ্ট্যটি পরীক্ষা করতে চান তবে আপনি আপনার ব্রাউজারে #enable-experimental-web-platform-features সক্ষম করতে পারেন।
    1. একবার আপনি স্থানীয়ভাবে পরীক্ষা করা হয়ে গেলে আপনি StorageAccessAPIBeyondCookies অরিজিন ট্রায়ালের জন্য নিবন্ধন করতে পারেন এবং আপনার ডোমেনের জন্য একটি টোকেন পেতে পারেন। আরো বিস্তারিত নির্দেশাবলীর জন্য, মূল ট্রায়াল দিয়ে শুরু করুন দেখুন। আপনার টোকেন সঠিকভাবে কনফিগার করা হয়েছে তা নিশ্চিত করার জন্য Chrome অরিজিন ট্রায়ালগুলির সমস্যা সমাধানের নির্দেশিকা একটি সম্পূর্ণ চেকলিস্ট প্রদান করে।
    2. একটি HTTP শিরোনাম , HTML মেটা ট্যাগ , বা প্রোগ্রাম্যাটিকভাবে ব্যবহার করে আইফ্রেমে সেই মূল ট্রায়াল টোকেনটি এম্বেড করুন যা আপনাকে স্টোরেজ অ্যাক্সেস API হ্যান্ডেলটি ব্যবহার করতে হবে৷ মনে রাখবেন যে এই API ব্যবহার করতে ইচ্ছুক যেকোন ফ্রেমে টোকেনটি এম্বেড করা আবশ্যক, এটিকে প্যারেন্ট ফ্রেমে এম্বেড করা শিশু ফ্রেমে API সক্ষম করবে না।
  4. ক্রস-সাইট আইফ্রেমে স্টোরেজ অ্যাক্সেস API হ্যান্ডেল পেতে document.requestStorageAccess(...) এ কল করুন। এই কল সফল হওয়ার প্রয়োজনীয়তার জন্য স্টোরেজ অ্যাক্সেস API ডকুমেন্টেশন দেখুন।
  5. স্টোরেজ অ্যাক্সেস API হ্যান্ডেলটি উপলব্ধ থাকলে তা ব্যবহার করতে আপনার আইফ্রেমে সম্পর্কিত স্টোরেজ স্থানান্তর করুন। উদাহরণস্বরূপ, window.sessionStorage.setItem(...) এ কল করা handle.sessionStorage.setItem(...) হয়ে যায়।
  6. আপনার ওয়েবসাইট খুলুন এবং যাচাই করুন যে স্টোরেজ অ্যাক্সেস হ্যান্ডেলটি উদ্দেশ্য অনুযায়ী কাজ করছে।
  7. অরিজিন ট্রায়ালে অংশগ্রহণ বন্ধ করতে, ধাপ 3 এ আপনার যোগ করা টোকেনটি সরিয়ে দিন।
  8. প্রতিক্রিয়া জমা দিন বা স্টোরেজ অ্যাক্সেস এপিআই নন-কুকি স্টোরেজ গিটহাব রিপোজিটরিতে আপনার সম্মুখীন হওয়া যেকোনো সমস্যা উত্থাপন করুন।

ডেমো: বিভাজনবিহীন স্থানীয় স্টোরেজ অ্যাক্সেস করতে স্টোরেজ অ্যাক্সেস API ব্যবহার করে

নিম্নলিখিত ডেমো দেখায় কিভাবে স্টোরেজ অ্যাক্সেস API ব্যবহার করে তৃতীয় পক্ষের আইফ্রেম থেকে বিভাজনবিহীন ব্রডকাস্ট চ্যানেলগুলি অ্যাক্সেস করতে হয়:

https://saa-beyond-cookies.glitch.me/

টেস্ট-থার্ড-পার্টি-কুকি-ফেজআউট ফ্ল্যাগ সক্ষম সহ ডেমোর জন্য Chrome 121 বা উচ্চতর প্রয়োজন।

অতিরিক্ত সম্পদ