เรียกใช้ Worklet พื้นที่เก็บข้อมูลที่ใช้ร่วมกันเพื่อเลือก URL และแสดงผลในเฟรมที่มีการปิดกั้น
Shared Storage API เป็นนโยบายความเป็นส่วนตัว ข้อเสนอแซนด์บ็อกซ์สำหรับจุดประสงค์ทั่วไป พื้นที่เก็บข้อมูลข้ามเว็บไซต์ ซึ่งสนับสนุน Use Case ที่เป็นไปได้ ตัวอย่างหนึ่งคือการควบคุมความถี่ ซึ่งมี ใน Chrome เบต้า 104.0.5086.0 ขึ้นไป
เรียกใช้สคริปต์ Worklet เพื่อเลือก URL จากรายการที่มีให้ โดยอิงตาม URL ที่จัดเก็บไว้ ข้อมูล แล้วแสดงผล URL นั้นในเฟรมที่มีการปิดกั้น การตั้งค่านี้สามารถใช้เพื่อเลือก โฆษณาใหม่หรือเนื้อหาอื่นเมื่อถึงขีดจำกัดความถี่แล้ว
ทดสอบการเลือกครีเอทีฟโฆษณาตามความถี่
หากต้องการทดสอบการเลือกครีเอทีฟโฆษณาตามความถี่ในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันและเฟรมที่มีการปิดกั้น ให้ยืนยันว่าคุณ
ใช้ Chrome 104.0.5086.0 ขึ้นไป เปิดใช้ API ความเป็นส่วนตัวเกี่ยวกับโฆษณาทั้งหมดใน chrome://settings/adPrivacy
นอกจากนี้คุณยังเปิดใช้พื้นที่เก็บข้อมูลที่ใช้ร่วมกันได้ด้วยแฟล็ก --enable-features=PrivacySandboxAdsAPIsOverride,OverridePrivacySandboxSettingsLocalTesting,SharedStorageAPI,FencedFrames
ในบรรทัดคำสั่ง
การทดสอบกับตัวอย่างโค้ด
หากต้องการเลือกและสร้าง URL ที่คลุมเครือ ให้ลงทะเบียนโมดูล Worklet เพื่ออ่าน "แชร์" ข้อมูลพื้นที่เก็บข้อมูล คลาส Worklet จะได้รับรายการ URL สูงสุด 8 รายการ จากนั้น จะแสดงดัชนีของ URL ที่เลือก
เมื่อลูกค้าโทรหา sharedStorage.selectURL()
Worklet
ดำเนินการและแสดงผล URL ที่คลุมเครือเพื่อแสดงผลเป็นเฟรมที่มีการปิดกั้น
สมมติว่าคุณต้องการเลือกโฆษณาหรือเนื้อหาอื่นที่จะแสดงโดยอิงตามความถี่ที่ผู้ใช้เห็นก่อนหน้านี้ โดยคุณสามารถนับจำนวนครั้งที่ผู้ใช้ดูเนื้อหาและจัดเก็บค่าดังกล่าวไว้ในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันได้ เมื่อจัดเก็บแล้ว ค่าในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันจะพร้อมใช้งานในต้นทางต่างๆ
จากนั้นเวิร์กเล็ตพื้นที่เก็บข้อมูลที่ใช้ร่วมกันจะอ่านค่าในพื้นที่เก็บข้อมูลที่ใช้ร่วมกัน แล้วเพิ่มจำนวนตัวนับด้วยมุมมองเพิ่มเติมแต่ละรายการ หากจำนวนยังไม่ถึงขีดจำกัดที่กำหนดไว้ล่วงหน้า เนื้อหาที่คุณต้องการแสดงผลจะถูกส่งคืน (ดัชนี 1
) หากไม่เป็นเช่นนั้น URL เริ่มต้นจะส่งกลับ (ดัชนี 0
)
ในตัวอย่างนี้
creative-selection-by-frequencyjs
โหลดผ่าน iframe ของผู้ผลิตเนื้อหาหรือผู้ลงโฆษณา และเป็นผู้รับผิดชอบ สำหรับโหลดเวิร์กเล็ตพื้นที่เก็บข้อมูลที่ใช้ร่วมกัน และการแสดงผลความทึบแสงที่แสดงผล ลงในเฟรมที่มีการปิดกั้น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);
กรณีการใช้งาน
กรณีการใช้งานทั้งหมดที่ใช้ได้กับ Select URL API จะอยู่ในส่วนนี้ เราจะเพิ่มตัวอย่างอย่างต่อเนื่องเมื่อได้รับความคิดเห็นและค้นพบกรณีทดสอบใหม่ๆ
- หมุนเวียนครีเอทีฟโฆษณา: จัดเก็บข้อมูล เช่น รหัสครีเอทีฟโฆษณาและการโต้ตอบของผู้ใช้ เพื่อระบุครีเอทีฟโฆษณาที่ผู้ใช้เห็นในเว็บไซต์ต่างๆ
- เลือกครีเอทีฟโฆษณาตามความถี่: ใช้ข้อมูลจํานวนการดูเพื่อกําหนดครีเอทีฟโฆษณาที่ผู้ใช้เห็นในเว็บไซต์ต่างๆ
- เรียกใช้การทดสอบ A/B: คุณสามารถกําหนดผู้ใช้ให้อยู่ในกลุ่มทดสอบ จากนั้นจัดเก็บกลุ่มนั้นไว้ในพื้นที่เก็บข้อมูลส่วนกลางเพื่อให้เข้าถึงได้ข้ามเว็บไซต์
- ปรับแต่งประสบการณ์การใช้งานสำหรับลูกค้าที่รู้จัก: แชร์เนื้อหาและคำกระตุ้นให้ดำเนินการ (Call-To-Action) ที่กําหนดเองตามสถานะการลงทะเบียนของผู้ใช้หรือสถานะอื่นๆ ของผู้ใช้
มีส่วนร่วมและแชร์ความคิดเห็น
โปรดทราบว่าข้อเสนอ Select URL API อยู่ระหว่างการพูดคุยและการพัฒนาอย่างต่อเนื่อง และอาจมีการเปลี่ยนแปลง
เราอยากฟังความคิดเห็นของคุณเกี่ยวกับ Select URL API
- ข้อเสนอ: ตรวจสอบข้อเสนอโดยละเอียด
- การสนทนา: เข้าร่วมการสนทนาอย่างต่อเนื่องเพื่อถามคำถามและแชร์ข้อมูลเชิงลึก
ติดตามข้อมูลอยู่เสมอ
- รายชื่ออีเมล: สมัครรับอีเมลจากรายชื่ออีเมลของเราเพื่อรับข้อมูลอัปเดตและการประกาศล่าสุดเกี่ยวกับ Select URL และ Shared Storage API
หากต้องการความช่วยเหลือ
- การสนับสนุนนักพัฒนาแอป: เชื่อมต่อกับนักพัฒนาแอปคนอื่นๆ และรับคำตอบสำหรับคำถามของคุณในที่เก็บข้อมูลการสนับสนุนนักพัฒนาแอปของ Privacy Sandbox