برای انتخاب URL و رندر کردن آن در یک قاب محصور، یک Worklet Storage مشترک اجرا کنید.
Shared Storage API یک پیشنهاد Privacy Sandbox برای اهداف عمومی، فضای ذخیرهسازی بین سایتی است که از بسیاری از موارد استفاده ممکن پشتیبانی میکند. یک مثال کنترل فرکانس است که برای آزمایش در Chrome Beta 104.0.5086.0 و جدیدتر در دسترس است.
یک اسکریپت Worklet برای انتخاب یک URL از لیست ارائه شده، بر اساس داده های ذخیره شده، اجرا کنید و سپس آن URL را در یک قاب حصاردار رندر کنید. هنگامی که به محدودیت فرکانس رسیده است، می توان از آن برای انتخاب تبلیغات جدید یا محتوای دیگر استفاده کرد.
انتخاب خلاق را بر اساس فرکانس آزمایش کنید
برای آزمایش انتخاب خلاق بر اساس فرکانس با فضای ذخیرهسازی مشترک و قابهای حصاردار، تأیید کنید که از Chrome 104.0.5086.0 یا جدیدتر استفاده میکنید. همه APIهای حریم خصوصی تبلیغات را در chrome://settings/adPrivacy
فعال کنید.
همچنین میتوانید ذخیرهسازی مشترک را با پرچم --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
در خط فرمان فعال کنید.
با نمونه کد آزمایش کنید
برای انتخاب و ایجاد یک URL مات، یک ماژول Worklet برای خواندن داده های ذخیره سازی مشترک ثبت کنید. کلاس Worklet لیستی از حداکثر هشت URL دریافت می کند و سپس فهرست URL انتخاب شده را برمی گرداند.
هنگامی که کلاینت sharedStorage.selectURL()
فراخوانی می کند، worklet یک URL مات را اجرا می کند و برمی گرداند تا در یک قاب حصاردار رندر شود.
فرض کنید میخواهید آگهی یا محتوای دیگری را بر اساس تعداد دفعاتی که کاربر قبلاً آن را دیده است، انتخاب کنید. میتوانید تعداد دفعاتی را که کاربر یک محتوا را دیده است بشمارید و آن مقدار را در فضای ذخیرهسازی مشترک ذخیره کنید. پس از ذخیره شدن، مقدار موجود در فضای ذخیرهسازی مشترک در مبادی مختلف برای شما در دسترس میشود.
سپس، Worklet ذخیره سازی مشترک مقادیر موجود در فضای ذخیره سازی مشترک را می خواند و با هر نمایش اضافی شمارنده را افزایش می دهد. اگر تعداد به حد از پیش تعریف شده نرسیده باشد، محتوایی که می خواهید ارائه دهید برگردانده می شود (شاخص 1
). اگر نه، URL پیش فرض برگردانده می شود (شاخص 0
).
در این مثال:
-
creative-selection-by-frequencyjs
از طریق iframe تولیدکننده محتوا یا تبلیغکننده بارگیری میشود و مسئول بارگیری Worklet ذخیرهسازی مشترک و ارائه منبع مات برگشتی در یک قاب حصاردار است. -
creative-selection-by-frequency-worklet.js
یک ابزار ذخیره سازی مشترک است که تعداد دفعات را می خواند تا مشخص کند کدام URL برای یک محتوا یا یک آگهی تبلیغاتی بازگردانده می شود.
creative-selection-by-frequency.js
// The first URL is the default content or ad to be rendered when the frequency limits reached.
const CONTENT_URLS = [
{ url: `https://${contentProducerUrl}/default-content.html` },
{ url: `https://${contentProducerUrl}/example-content.html` },
];
async function injectAd() {
// Load the worklet module.
await window.sharedStorage.worklet.addModule('creative-selection-by-frequency-worklet.js');
// Set the initial frequency count
window.sharedStorage.set('frequency-count', 0, {
ignoreIfPresent: true,
});
// Run the URL selection operation to choose an ad based on the frequency count in shared storage.
const fencedFrameConfig = await window.sharedStorage.selectURL('creative-selection-by-frequency', CONTENT_URLS, {
resolveToConfig: true
});
// Render the opaque URL into a fenced frame
document.getElementById('content-slot').config = fencedFrameConfig;
}
injectAd();
creative-selection-by-frequency-worklet.js
const FREQUENCY_LIMIT = 5;
class CreativeSelectionByFrequencyOperation {
async run(urls, data) {
// Read the current frequency limit in shared storage
const count = parseInt(await sharedStorage.get('frequency-count'));
// Check if the frequency limit has been reached.
if (count === FREQUENCY_LIMIT) {
console.log('Frequency limit has been reached, and the default content will be rendered.');
return 0;
}
// Set the new frequency count in shared storage
await sharedStorage.set('frequency-count', count + 1);
return 1;
}
}
// Register the operation as 'creative-selection-by-frequency'.
register('creative-selection-by-frequency', CreativeSelectionByFrequencyOperation);
موارد استفاده کنید
اینها تنها برخی از موارد استفاده ممکن برای ذخیره سازی مشترک هستند. با دریافت بازخورد و کشف موارد استفاده جدید، به افزودن مثالها ادامه خواهیم داد.
انتخاب محتوا
بر اساس اطلاعات جمع آوری شده در ذخیره سازی مشترک، محتوای مختلف را در وب سایت های مختلف در قاب های حصاردار انتخاب و نمایش دهید. دروازه خروجی برای این موارد استفاده، انتخاب URL است.
- چرخش خلاق : دادههایی مانند شناسه خلاق، تعداد بازدیدها و تعامل کاربر را ذخیره کنید تا مشخص کنید کاربران خلاق کدام یک را در سایتهای مختلف میبینند.
- تست A/B : میتوانید کاربر را به یک گروه آزمایشی اختصاص دهید، سپس آن گروه را در فضای ذخیرهسازی مشترک ذخیره کنید تا از طریق سایت به آن دسترسی داشته باشید.
- تجربیات کاربر سفارشی : اشتراکگذاری محتوای سفارشی و فراخوانها برای اقدام بر اساس وضعیت ثبت نام کاربر یا سایر وضعیتهای کاربر
ایجاد گزارش های خلاصه
اطلاعات را با ذخیرهسازی مشترک جمعآوری کنید و یک گزارش خلاصه پر سر و صدا ایجاد کنید. دروازه خروجی برای این موارد استفاده، API تجمع خصوصی است.
- اندازه گیری دسترسی منحصر به فرد : بسیاری از تولیدکنندگان محتوا و تبلیغ کنندگان می خواهند بدانند چه تعداد از افراد منحصر به فرد محتوای آنها را دیده اند. از فضای ذخیرهسازی مشترک برای ضبط اولین باری که کاربر تبلیغ، ویدیوی جاسازی شده یا انتشارات شما را مشاهده کرد و از شمارش تکراری همان کاربر در سایتهای مختلف جلوگیری کنید. سپس می توانید از Private Aggregation API برای خروجی یک گزارش خلاصه برای دسترسی خود استفاده کنید.
- اندازه گیری جمعیت شناسی : تولیدکنندگان محتوا اغلب می خواهند اطلاعات جمعیتی مخاطبان خود را درک کنند. میتوانید از «فضای ذخیرهسازی مشترک» برای ثبت دادههای جمعیتی کاربر در زمینهای که آنها را دارید، مانند سایت شخص اول خود، و از گزارشهای انبوه برای گزارش آن در بسیاری از سایتهای دیگر، مانند محتوای جاسازی شده، استفاده کنید.
- اندازهگیری فرکانس K+ : گاهی اوقات به عنوان «فرکانس مؤثر» توصیف میشود، معمولاً قبل از اینکه کاربر محتوای خاصی را تشخیص دهد یا به خاطر بیاورد (اغلب در زمینه بازدیدهای تبلیغاتی) حداقل تعداد بازدید وجود دارد. میتوانید از فضای ذخیرهسازی مشترک برای ایجاد گزارشهایی از کاربران منحصربهفردی که محتوایی را حداقل K بار دیدهاند، استفاده کنید.
مشارکت کنید و بازخورد را به اشتراک بگذارید
پیشنهاد ذخیرهسازی مشترک در دست بحث فعال است و ممکن است در آینده تغییر کند. اگر این API را امتحان کردید و بازخورد دارید، مایلیم آن را بشنویم.
- GitHub : پیشنهاد را بخوانید، به وایت پیپر برسید ، سوالاتی را مطرح کنید و در بحث شرکت کنید .
- اطلاعیههای API ذخیرهسازی مشترک : به اعلانهای گذشته در لیست پستی ما بپیوندید یا مشاهده کنید
- پشتیبانی برنامهنویس : سؤال بپرسید و به بحثهای مربوط به مخزن پشتیبانی توسعهدهنده Privacy Sandbox بپیوندید.