שימוש ב-worklet של Shared Storage כדי להריץ בדיקות A/B.
Shared Storage API מאפשר פרטיות הצעת Sandbox למטרה כללית, אחסון באתרים שונים, שתומך בהרבה במקרים רלוונטיים. אחת הדוגמאות לכך היא בדיקת A/B, שזמינה לבדיקה. ב-Chrome מגרסה 104.0.5086.0 ואילך.
אפשר להקצות משתמש לקבוצת ניסוי, ולאחר מכן לאחסן את הקבוצה בכרטיסייה 'שיתופים' אחסון שאפשר לגשת אליו בסביבה חוצת-אתרים.
ביצוע בדיקות A/B
כדי להתנסות בבדיקות A/B עם נפח אחסון משותף, צריך לוודא שמשתמשים ב-Chrome מגרסה 104.0.5086.0 ואילך. הפעלת כל ממשקי ה-API לשמירה על פרטיות בפרסום במסגרת chrome://settings/adPrivacy
.
אפשר להפעיל אחסון משותף גם באמצעות הדגל --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
בשורת הפקודה.
התנסות עם דוגמאות קוד
כדי לראות אם לניסוי יש את ההשפעה הרצויה, אפשר להפעיל בדיקת A/B במספר אתרים. מפרסמים או יצרני תוכן יכולים להציג מודעות או תכנים שונים בהתאם לקבוצה שאליה המשתמש משויך. ההקצאה של הקבוצה נשמרת באחסון משותף, אבל אי אפשר לזלוג אותה.
בדוגמה הזו:
ab-testing.js
צריך להיות מוטמע במסגרת, שממפה תוכן בקרה ושני תוכן של ניסוי. הסקריפט מפעיל את ה-worklet של האחסון המשותף של הניסוי.ab-testing-worklet.js
הוא ה-worklet של נפח אחסון משותף, שמחזיר את הקבוצה שאליה משויך המשתמש, שקובע איזו מודעה תוצג.
// Randomly assigns a user to a group 0 or 1
function getExperimentGroup() {
return Math.round(Math.random());
}
async function injectContent() {
// Register the Shared Storage worklet
await window.sharedStorage.worklet.addModule('ab-testing-worklet.js');
// Assign user to a random group (0 or 1) and store it in Shared Storage
window.sharedStorage.set('ab-testing-group', getExperimentGroup(), {
ignoreIfPresent: true,
});
// Run the URL selection operation
const fencedFrameConfig = await window.sharedStorage.selectURL(
'ab-testing',
[
{ url: `https://your-server.example/content/default-content.html` },
{ url: `https://your-server.example/content/experiment-content-a.html` }
],
{
resolveToConfig: true
}
);
// Render the chosen URL into a fenced frame
document.getElementById('content-slot').config = fencedFrameConfig;
}
injectContent();
class SelectURLOperation {
async run(urls, data) {
// Read the user's experiment group from Shared Storage
const experimentGroup = await sharedStorage.get('ab-testing-group');
// Return the corresponding URL (first or second item in the array)
return urls.indexOf(experimentGroup);
}
}
register('ab-testing', SelectURLOperation);
תרחישים לדוגמה
אלה רק כמה מהתרחישים לדוגמה האפשריים של אחסון משותף. אנחנו נמשיך להוסיף דוגמאות, קבלת משוב ולגלות תרחישים חדשים לדוגמה.
בחירת תוכן
לבחור ולהציג תוכן שונה באתרים שונים ב- פריימים מקודדים שמבוססים על מידע שנאספו באחסון משותף. שער הפלט לתרחישים לדוגמה האלה הוא בחירת כתובת URL.
- רוטציית קריאייטיב: אחסון נתונים, כגון מזהה קריאייטיב, ספירת צפיות ואינטראקציות של משתמשים, כדי לקבוע אילו קריאייטיבים לראות באתרים שונים.
- בדיקת A/B: תוכלו להקצות משתמש לקבוצת ניסוי ולאחר מכן לאחסן את הקבוצה באחסון משותף כדי שתהיה גישה אליה בכל האתרים.
- חוויות משתמש בהתאמה אישית: לשתף תוכן מותאם אישית וקריאות לפעולה על סמך סטטוס הרישום של המשתמש או מצבים אחרים שלו
יצירת דוחות סיכום
איסוף מידע באמצעות נפח אחסון משותף והפקת דוח סיכום מצטבר ורועש. שער הפלט לתרחישים לדוגמה האלה הוא Private Aggregation API
- מדידת היקף החשיפה למשתמשים ייחודיים: יצרני תוכן ומפרסמים רבים רוצים לדעת כמה אנשים ראו את התוכן שלהם. איך משתמשים באחסון משותף כדי לתעד את הפעם הראשונה שבה משתמש ראו את המודעה, את הסרטון המוטמע או את אתר החדשות, ומנעו כפילויות ספירה של אותו משתמש באתרים שונים. אחר כך תוכלו להשתמש ב-Private Aggregation API כדי להפיק דוח סיכום לגבי היקף החשיפה.
- מדידה דמוגרפית: מפיקי תוכן בדרך כלל רוצים להבין את הנתונים הדמוגרפיים של הקהל. ניתן להשתמש באחסון משותף כדי לתעד נתונים דמוגרפיים של משתמשים ההקשר שבו יש לכם נתונים כאלה, כמו האתר של הצד הראשון, ותשתמשו בנתונים נצברים לדווח עליו באתרים רבים אחרים, כמו תוכן מוטמע.
- מדידת תדירות של K+: לפעמים הוא מתואר כ"תדירות אפקטיבית", לעיתים קרובות יש מספר מינימלי לפני שמשתמש יזהה או יזכור תוכן מסוים (בדרך כלל ההקשר של צפיות במודעה). אפשר להשתמש בנפח אחסון משותף ליצירת דוחות משתמשים ייחודיים שראו קטע תוכן לפחות אלף פעמים.
מעורבות ושיתוף משוב
ההצעה לנפח אחסון משותף נמצאת בדיון פעיל וכפופה לשינויים הוא בעתיד. אם ניסיתם את ה-API הזה ויש לכם משוב, נשמח לשמוע אותו.
- GitHub: קראו את הצעה, לעיון בסקירה המפורטת, העלאת שאלות והשתתפות בדיון.
- הודעות על Shared Storage API: הצטרפות להודעות קודמות או הצגה שלהן ברשימת התפוצה שלנו
- תמיכה למפתחים: אפשר לשאול שאלות ולהצטרף לדיונים מאגר התמיכה למפתחים של ארגז החול לפרטיות