যখন একটি Protected Audience নিলাম একটি বিজ্ঞাপন প্রার্থীকে ফেরত পাঠায়, তখন এটি হয় একটি অস্বচ্ছ URN হিসাবে ফেরত পাঠানো যেতে পারে, যা একটি iframe এ একটি বিজ্ঞাপন রেন্ডার করতে ব্যবহৃত হয়, অথবা একটি FencedFrameConfig যা একটি বেড়াযুক্ত ফ্রেমে বিজ্ঞাপন রেন্ডার করতে ব্যবহৃত হয়।
এই নির্দেশিকাটিতে একটি বেড়াযুক্ত ফ্রেম কী এবং কেন এটি প্রয়োজন তা ব্যাখ্যা করা হবে, সেইসাথে উভয় পদ্ধতি ব্যবহার করে কীভাবে একটি বিজ্ঞাপন রেন্ডার করা যায় তাও ব্যাখ্যা করা হবে। বেড়াযুক্ত ফ্রেম সম্পর্কে আরও বিস্তারিত জানার জন্য, এই নির্দেশিকা বা প্রস্তাবনাতে আরও তথ্য পান।
বেড়াযুক্ত ফ্রেম কি?
একটি ফেন্সড ফ্রেম ( <fencedframe> ) হল এমবেডেড কন্টেন্টের জন্য একটি HTML উপাদান, যা একটি iframe এর মতো। iframe এর বিপরীতে, একটি ফেন্সড ফ্রেম তার এমবেডিং কনটেক্সটের সাথে যোগাযোগকে সীমাবদ্ধ করে যাতে ফ্রেমটি এমবেডিং কনটেক্সটের সাথে শেয়ার না করেই ক্রস-সাইট ডেটা অ্যাক্সেস করতে পারে। একইভাবে, এমবেডিং কনটেক্সটের যেকোনো প্রথম-পক্ষের ডেটা ফেন্সড ফ্রেমের সাথে শেয়ার করা যাবে না।
উদাহরণস্বরূপ, ধরুন news.example (এম্বেডিং প্রসঙ্গ) shoes.example থেকে একটি বিজ্ঞাপনকে একটি বেড়াযুক্ত ফ্রেমে এম্বেড করে। news.example shoes.example বিজ্ঞাপন থেকে ডেটা এক্সফিল্টার করতে পারে না, এবং shoes.example news.example থেকে প্রথম-পক্ষের ডেটা শিখতে পারে না।
বেড়াযুক্ত ফ্রেম কিভাবে কাজ করে?
ফেন্সড ফ্রেমগুলি নেভিগেশনের জন্য FencedFrameConfig অবজেক্ট ব্যবহার করে। এই অবজেক্টটি একটি Protected Audience নিলাম থেকে ফেরত পাঠানো যেতে পারে। তারপর, কনফিগ অবজেক্টটি ফেন্সড ফ্রেম এলিমেন্টে config অ্যাট্রিবিউট হিসেবে সেট করা হয়। এটি একটি iframe থেকে আলাদা যেখানে src অ্যাট্রিবিউটের সাথে একটি URL বা অস্বচ্ছ URN বরাদ্দ করা হয়। FencedFrameConfig অবজেক্টের একটি পঠনযোগ্য url বৈশিষ্ট্য রয়েছে; তবে, যেহেতু বর্তমান ব্যবহারের ক্ষেত্রে অভ্যন্তরীণ রিসোর্সের প্রকৃত URL লুকানো প্রয়োজন, তাই এই বৈশিষ্ট্যটি পড়ার সময় অস্বচ্ছ স্ট্রিংটি ফেরত দেয়।
একটি ফেন্সড ফ্রেম তার এম্বেডারের সাথে যোগাযোগের জন্য postMessage ব্যবহার করতে পারে না। তবে, একটি ফেন্সড ফ্রেম fenced ফ্রেমের ভিতরে iframe সহ postMessage ব্যবহার করতে পারে।
ফেন্সড ফ্রেমগুলি প্রকাশক থেকে অন্যভাবে বিচ্ছিন্ন করা হবে। প্রকাশকের ফেন্সড ফ্রেমের ভিতরের DOM-এ অ্যাক্সেস থাকবে না এবং ফেন্সড ফ্রেমটি প্রকাশকের DOM-এ অ্যাক্সেস করতে পারবে না। এছাড়াও, name এর মতো বৈশিষ্ট্য, যা প্রকাশক দ্বারা যেকোনো মান নির্ধারণ এবং পর্যবেক্ষণ করা যেতে পারে, ফেন্সড ফ্রেমে উপলব্ধ নয়।
ফেনসড ফ্রেমগুলি একটি শীর্ষ-স্তরের ব্রাউজিং প্রেক্ষাপটের মতো আচরণ করে (যেমন একটি ব্রাউজার ট্যাব)। যদিও নির্দিষ্ট ব্যবহারের ক্ষেত্রে (যেমন opaque-ads ) একটি ফেনসড ফ্রেমে ক্রস-সাইট ডেটা থাকতে পারে (যেমন একটি Protected Audience API ইন্টারেস্ট গ্রুপ), ফ্রেমটি পার্টিশনবিহীন স্টোরেজ বা কুকিজ অ্যাক্সেস করতে পারে না। একটি opaque-ads ফেনসড ফ্রেম একটি অনন্য, নন-ভিত্তিক কুকি এবং স্টোরেজ পার্টিশন অ্যাক্সেস করতে পারে।
বেড়াযুক্ত ফ্রেমের বৈশিষ্ট্যগুলি ব্যাখ্যাকারীতে আরও বিশদে বর্ণনা করা হয়েছে।
বেড়াযুক্ত ফ্রেমে একটি বিজ্ঞাপন রেন্ডার করুন
একটি FencedFrameConfig একটি Protected Audience নিলাম থেকে ফেরত পাঠানো হয়, যদি AuctionConfig এর resolveToConfig প্যারামিটারটি true তে সেট করা থাকে:
const frameConfig = await navigator.runAdAuction({
// ...auction configuration
resolveToConfig: true
});
কনফিগারেশনটি পাওয়ার পর, আপনি এটি একটি fenced frame এর config অ্যাট্রিবিউটে অ্যাসাইন করতে পারেন যাতে ফ্রেমটি কনফিগারেশন দ্বারা প্রতিনিধিত্ব করা রিসোর্সে নেভিগেট করা যায়। Chrome এর পূর্ববর্তী সংস্করণগুলি resolveToConfig বৈশিষ্ট্য সমর্থন করে না, তাই আপনাকে নেভিগেট করার আগে অবশ্যই নিশ্চিত করতে হবে যে প্রতিশ্রুতিটি একটি FencedFrameConfig এ সমাধান করা হয়েছে:
if (window.FencedFrameConfig && frameConfig instanceof FencedFrameConfig) {
const frame = document.createElement('fencedframe');
frame.config = frameConfig;
}
একটি আইফ্রেমে একটি বিজ্ঞাপন রেন্ডার করুন
যদি AuctionConfig স্পষ্টভাবে resolveToConfig সেট না করে অথবা যদি এটি false তে সেট করা থাকে, তাহলে runAdAuction() একটি অস্বচ্ছ URN প্রদান করে। বিজ্ঞাপনটি রেন্ডার করার জন্য এই URN একটি iframe এর src হিসাবে সেট করা যেতে পারে।