ภาพรวม URL ที่เลือก

Select URL ช่วยให้คุณเลือกเนื้อหาที่จะแสดงต่อผู้ใช้ตามข้อมูล Shared Storage โดยไม่ต้องเปิดเผยข้อมูลที่จัดเก็บไว้เบื้องหลัง

ในกรณีที่คุณต้องการแสดงเนื้อหาตามข้อมูลข้ามเว็บไซต์ในลักษณะที่ เป็นมิตรกับความเป็นส่วนตัว คุณสามารถใช้ Select URL API ได้ API เลือก URL เหมาะสำหรับกรณีการใช้งานต่อไปนี้

  • การทดสอบ A/B ของเนื้อหาเพื่อให้ผู้ใช้ได้รับประสบการณ์ที่สอดคล้องกันในเว็บไซต์หลายแห่ง
  • แสดงปุ่มลงชื่อเข้าใช้ที่แตกต่างกันสำหรับผู้ใช้ที่มีบัญชีและผู้ใช้ที่ไม่มีบัญชี
  • การหมุนเวียนครีเอทีฟโฆษณาเพื่อจำกัดความถี่ที่ผู้ใช้เห็นโฆษณาเดียวกัน ในหลายเว็บไซต์

Select URL API คืออะไร

Select URL API ช่วยให้คุณเลือกระหว่างชุด URL ตามข้อมูลข้ามเว็บไซต์ API สร้างขึ้นบน Shared Storage และใช้ SharedStorageWorklet เพื่ออ่านข้อมูลข้ามเว็บไซต์ที่มีอยู่และเลือก URL ที่ระบุ URL ใด URL หนึ่ง ระบบจะส่ง URL ที่เลือกกลับไปยังผู้เรียกในลักษณะที่ป้องกันไม่ให้มีการอ่าน URL ดังกล่าว ยกเว้นภายใน Fenced Frame นอกจากนี้ยังแสดงผล URL ใน iframe ได้จนถึงปี 2026 เป็นอย่างน้อย

แผนภาพแสดง iframe ของ shoes.example ที่ฝังอยู่ในเว็บไซต์ของผู้เผยแพร่โฆษณาต่างๆ รวมถึง news.example และ blog.example เว็บไซต์ shoes.com สามารถเข้าถึงพื้นที่เก็บข้อมูลที่ไม่ได้แบ่งพาร์ติชันของตนเองจากเว็บไซต์ระดับบนสุดแต่ละเว็บไซต์ได้

ในแผนภาพก่อนหน้า เว็บไซต์ shoes.example สามารถฝังในเว็บไซต์อื่นๆ ของผู้เผยแพร่โฆษณา เช่น news.example และยังคงเข้าถึงข้อมูลเดียวกันได้โดยใช้ Select URL กับ Shared Storage เพื่อเลือกเนื้อหาที่เหมาะสมที่จะฝัง

วิธีการทำงานของ URL ที่เลือก

คุณสามารถใช้ Select URL API เพื่อเลือก URL ที่จะแสดงใน Fenced Frame หรือ iframe โดยใช้ข้อมูลข้ามเว็บไซต์ ใช้ JavaScript เพื่ออ่านและเขียนข้อมูลข้ามเว็บไซต์ใน Shared Storage จากนั้นเลือก URL จากรายการที่ระบุตามข้อมูลที่จัดเก็บไว้

เว็บไซต์หรือต้นทางที่ลงทะเบียนจะเขียนข้อมูลลงใน Shared Storage ได้ จากนั้นเว็บไซต์จะอ่านข้อมูลนั้นได้ด้วย Select URL API เท่านั้น

URL ที่แสดงผลอาจมีเนื้อหาใดก็ได้ เช่น โฆษณา บทความ รูปภาพ HTML คำกระตุ้นให้ดำเนินการ (เช่น ปุ่ม) และอื่นๆ

ในตัวอย่างนี้ คุณเรียกใช้เว็บไซต์ท่องเที่ยวและใช้งานแคมเปญโฆษณาที่มีครีเอทีฟโฆษณา 3 แบบ ที่แตกต่างกัน คุณต้องการจัดลำดับครีเอทีฟโฆษณาเหล่านี้ตามการโต้ตอบของผู้ใช้ (ดูหรือคลิก)

ครีเอทีฟโฆษณา 3 รายการซึ่งแสดงต่อผู้ใช้ตามการโต้ตอบก่อนหน้านี้
ครีเอทีฟโฆษณาแรกสำหรับผู้ชมใหม่พูดว่า "ออกไปผจญภัยครั้งต่อไป" เมื่อผู้ใช้ดูครีเอทีฟโฆษณาโดยไม่คลิก ครีเอทีฟโฆษณาถัดไปที่ผู้ใช้เห็นจะระบุว่า "สำรวจทริปสุดสัปดาห์" หลังจากดูหรือคลิกแล้ว ครีเอทีฟโฆษณาที่ 3 จะกระตุ้นให้ผู้ใช้ "คลิกเพื่อรับส่วนลดโรงแรม" หากผู้ใช้คลิกโฆษณาแรก โฆษณาถัดไปที่ผู้ใช้จะเห็นคือครีเอทีฟโฆษณาที่ 3

เมื่อเว็บไซต์สังเกตเห็นพื้นที่โฆษณาที่ชนะเป็นครั้งแรก คุณจะจัดเก็บรหัสและสถานะการคลิก ของครีเอทีฟโฆษณานั้นในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันได้

เช่น

await sharedStorage.set('last-creative', 'globe');
await sharedStorage.set('click', 'true');

ซึ่งหมายความว่าเมื่อคุณชนะการประมูลโฆษณาในเว็บไซต์อื่นๆ ที่ผู้ใช้รายนี้เข้าชม คุณจะ แสดงโฆษณาอื่นตามข้อมูลดังกล่าวได้

ภาพรวมของพื้นที่เก็บข้อมูลที่ใช้ร่วมกันที่มีครีเอทีฟโฆษณา 3 รายการและการโต้ตอบของผู้ใช้

JavaScript จะทํางานใน SharedStorageWorklet เพื่อดึงข้อมูลนี้ แต่โค้ดของคุณจะโต้ตอบหรือสื่อสาร ภายนอก iframe หรือ Fenced Frame ในหน้าหลักไม่ได้

อีกตัวอย่างหนึ่งคือ คุณอาจต้องการทดสอบว่าบทความใดจะมีประสิทธิภาพดีกว่าใน บริบทที่ฝัง หากต้องการทดสอบ ให้กำหนดผู้ใช้ให้กับกลุ่มทดสอบ เมื่อเห็นผู้ใช้ดังกล่าวในเว็บไซต์ จากนั้นจัดเก็บรหัสกลุ่มนั้นไว้ใน Shared Storage เพื่อให้เข้าถึงได้ในบริบทข้ามเว็บไซต์ ในเว็บไซต์อื่น คุณสามารถใช้ Select URL API เพื่อเลือก URL ที่เหมาะสมที่สุดที่จะแสดงใน Fenced Frame โดยอิงตามกลุ่มการทดสอบของผู้ใช้ที่จัดเก็บไว้ใน Shared Storage

การใช้ "เลือก URL" ช่วยให้คุณตัดสินใจได้อย่างรอบคอบโดยอิงตามข้อมูลข้ามเว็บไซต์ โดยไม่ต้องแชร์ข้อมูลผู้ใช้ (เช่น ประวัติการท่องเว็บหรือรายละเอียดส่วนบุคคลอื่นๆ ) กับเว็บไซต์ที่ฝัง หรือส่งข้อมูลไปยังเซิร์ฟเวอร์ของคุณเอง

งบประมาณ

Select URL API ใช้ ระบบการจัดสรรงบประมาณร่วมกับงบประมาณระยะยาวและระยะสั้นเพื่อลดความเสี่ยงของการรั่วไหลของข้อมูลข้ามเว็บไซต์

  • งบประมาณระยะยาว: งบประมาณระยะยาวคือ 12 บิตต่อเว็บไซต์ของผู้โทรต่อวันเมื่อใช้ selectURL() ระบบจะเรียกเก็บเงินจากงบประมาณนี้ก็ต่อเมื่อเฟรมที่โฮสต์ URL ที่เลือกทําการนําทางระดับบนสุด โดยจะคํานวณต้นทุนเป็น log2(number of URLs) ดังนั้นหากคุณ ระบุ URL 8 รายการให้เลือก ค่าใช้จ่ายคือ 3 บิต ระบบจะคำนวณงบประมาณที่เหลือสำหรับ วันนั้นเป็น 12 - (sum of bits deducted in the last 24 hours) หากงบประมาณเหลือไม่เพียงพอ ระบบจะแสดง URL เริ่มต้น (URL แรกในรายการ) และบันทึก 1 บิตหากมีการไปยัง URL เริ่มต้น
  • งบประมาณระยะสั้น: งบประมาณระยะสั้นคือขีดจํากัดเพิ่มเติมต่อหน้าเว็บ ที่โหลดจนกว่าจะมีการบังคับใช้เฟรมที่จำกัดอย่างเต็มรูปแบบ และในขณะที่การรายงานระดับเหตุการณ์ พร้อมใช้งาน มีงบประมาณ6 บิตต่อเว็บไซต์ที่เรียกใช้ ต่อการโหลดหน้าเว็บ ซึ่งจำกัดปริมาณที่เว็บไซต์ที่เรียกใช้เดียวจะรั่วไหลได้โดยใช้ selectURL() นอกจากนี้ ยังมีงบประมาณ 12 บิตโดยรวมต่อการโหลดหน้าเว็บ ซึ่งเป็นขีดจํากัดรวมสําหรับ เว็บไซต์ที่เรียกใช้ทั้งหมดในหน้าเว็บ

    คำค้นหาที่บันทึกไว้ช่วยให้คุณนำselectURL()ผลลัพธ์ก่อนหน้ามาใช้ซ้ำในหน้าเดียวกันได้ ซึ่งจะช่วยลดการใช้งบประมาณระยะสั้น เมื่อเรียกใช้ selectURL() พร้อมชื่อการค้นหาที่บันทึกไว้เป็นครั้งแรก ระบบจะจัดเก็บดัชนีผลลัพธ์ไว้ตลอดอายุการใช้งานของหน้าเว็บ เมื่อเรียกใช้ selectURL() ด้วยชื่อคำค้นหาที่บันทึกไว้เดียวกันสำหรับการเรียกใช้ครั้งต่อๆ ไป ระบบจะแสดงดัชนีที่จัดเก็บไว้และจะไม่เรียกใช้การดำเนินการที่ลงทะเบียนไว้ ในกรณีนี้ ระบบจะเรียกเก็บเงินจากงบประมาณเมื่อมีการใช้ครั้งแรกเท่านั้น แต่จะไม่เรียกเก็บเงินจากการนำกลับมาใช้ใหม่ภายในหน้าเว็บเดียวกัน เนื่องจากไม่มีการเปิดเผยข้อมูลใหม่

    คุณสามารถใช้การค้นหาที่บันทึกไว้ได้โดยการเพิ่มพร็อพเพอร์ตี้ savedQuery พร้อมชื่อการค้นหาที่เลือกไว้ลงในออบเจ็กต์ options ดังที่แสดงในตัวอย่างนี้

    const topProductUrls = [
      { url: 'https://ad.example/default-top-product.html' },
      { url: 'https://ad.example/experiment-top-product.html' }];
    const relatedProductUrls = [
      { url: 'https://ad.example/default-related-product.html' },
      { url: 'https://ad.example/experiment-related-product.html' }];
    
    // This is the first call to `selectURL()` with `savedQuery: 'control_or_experiment'`
    // on this page, so it will be charged to both per-page budgets.
    const topProductsConfig = await sharedStorage.selectURL(
      'productExperiment', topProductUrls, {
        savedQuery: 'control_or_experiment',
        keepAlive: true,
        resolveToConfig: true
    });
    document.getElementById('topProductsFencedFrame').config = topProductsConfig;
    
    // This next call with this savedQuery won't charge either of the per-page budgets.
    const relatedProductConfig = await sharedStorage.selectURL(
      'productExperiment', relatedProductUrls, {
        savedQuery: 'control_or_experiment',
        resolveToConfig: true
    });
    document.getElementById("relatedProductFencedFrame").config = relatedProductConfig;
    

เลือกกรณีการใช้งาน URL API

หากคุณกำลังสร้างเว็บไซต์ที่มีฟีเจอร์ที่ต้องทำงานในโดเมนต่างๆ คุณอาจมีกรณีการใช้งานอย่างใดอย่างหนึ่งต่อไปนี้

  • หมุนเวียนครีเอทีฟโฆษณา: จำกัดความถี่ที่ผู้ใช้เห็นโฆษณาเดียวกันในหลายเว็บไซต์โดยจัดเก็บข้อมูล เช่น รหัสครีเอทีฟโฆษณา จำนวนการดู และการโต้ตอบของผู้ใช้ เพื่อพิจารณาว่าครีเอทีฟโฆษณาใดที่ผู้ใช้เห็นในเว็บไซต์ต่างๆ ซึ่งจะช่วยให้คุณรักษาสมดุลของยอดดูและหลีกเลี่ยงการแสดงเนื้อหาบางอย่างมากเกินไปเพื่อ จำกัดประสบการณ์ของผู้ใช้ที่อาจเป็นไปในเชิงลบ ดูข้อมูลเพิ่มเติมเกี่ยวกับกรณีการใช้งานนี้ได้ที่หมุนเวียนครีเอทีฟโฆษณา
  • เลือกครีเอทีฟโฆษณาตามความถี่: จัดเก็บจำนวนการดูเบราว์เซอร์ในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันเพื่อจำกัดความถี่ที่ผู้ใช้เห็นโฆษณาเดียวกันในหลายเว็บไซต์ ดูข้อมูลเพิ่มเติมเกี่ยวกับกรณีการใช้งานนี้ได้ที่เลือกครีเอทีฟโฆษณาตามความถี่
  • ปรับแต่งประสบการณ์ของผู้ใช้สำหรับลูกค้าที่รู้จัก: มอบประสบการณ์ที่สอดคล้องกันในโดเมนต่างๆ แชร์เนื้อหาที่กำหนดเองและคำกระตุ้นให้ดำเนินการตามสถานะการลงทะเบียนของผู้ใช้หรือสถานะอื่นๆ ของผู้ใช้ และมอบประสบการณ์ที่สอดคล้องกันในโดเมนต่างๆ ดูข้อมูลเพิ่มเติมเกี่ยวกับกรณีการใช้งานนี้ได้ที่ปรับแต่งประสบการณ์ของผู้ใช้สําหรับลูกค้าที่รู้จัก
  • ทำการทดสอบ A/B: การทดสอบ A/B จะเปรียบเทียบการกำหนดค่า 2 เวอร์ชันขึ้นไปเพื่อพิจารณาว่าเวอร์ชันใดมีประสิทธิภาพดีที่สุด คุณสามารถกำหนดผู้ใช้ให้เป็น กลุ่มทดสอบ แล้วจัดเก็บกลุ่มนั้นไว้ในพื้นที่เก็บข้อมูลที่แชร์เพื่อการเข้าถึงข้ามเว็บไซต์ ซึ่งจะช่วยให้คุณรวบรวมข้อมูลเชิงลึกเกี่ยวกับพฤติกรรมของผู้ใช้ในเครือข่าย เว็บไซต์ได้โดยไม่ต้องติดตามผู้ใช้แต่ละราย ดูข้อมูลเพิ่มเติมเกี่ยวกับกรณีการใช้งานนี้ได้ที่ทำการทดสอบ A/B

Select URL API ที่มี Shared Storage ช่วยให้คุณพัฒนา Use Case เหล่านี้ได้โดย มีสิทธิ์เข้าถึงพื้นที่เก็บข้อมูลเดียวกันในเว็บไซต์ระดับบนสุดต่างๆ

ทดลองใช้เดโม

คุณทดลองใช้ Select URL ได้โดยใช้ การสาธิต Shared Storage

การสาธิตนี้สร้างขึ้นจากมุมมองของผู้ลงโฆษณา เทคโนโลยีโฆษณา ผู้จัดจำหน่ายเนื้อหา หรือบริการอื่นๆ ของบุคคลที่สามที่ต้องการจัดเก็บข้อมูลในเว็บไซต์ของผู้เผยแพร่โฆษณา รายต่างๆ ในการสาธิต โค้ดของบุคคลที่สามเดียวกันจะทํางานในเว็บไซต์ของผู้เผยแพร่โฆษณา ก และผู้เผยแพร่โฆษณา ข สําหรับกรณีการใช้งานแต่ละกรณี ไปที่หน้าของ ผู้เผยแพร่โฆษณาแต่ละรายเพื่อดูว่ามีการแชร์ข้อมูลในบริบทข้ามเว็บไซต์อย่างไร

นอกจากนี้ คุณยังดูโค้ดของเดโมได้ที่ GitHub

สถานะ API

Select URL API อยู่ในเวอร์ชันสำหรับผู้ใช้ทั่วไป หากต้องการใช้ Select URL API หรือเปิดใช้สำหรับการพัฒนาในเครื่อง ให้ทำตามวิธีการเพื่อลงทะเบียน Privacy Sandbox

ข้อเสนอ สถานะ
การรายงานระดับเหตุการณ์สําหรับการเลือกเนื้อหา (selectURL()) ใช้งานได้จนถึงปี 2026 เป็นอย่างน้อย
การกำหนดงบประมาณต่อเว็บไซต์
คำอธิบาย
พร้อมให้บริการใน M119
การแก้ไขข้อบกพร่องของ Worklet พื้นที่เก็บข้อมูลที่แชร์ด้วยเครื่องมือสำหรับนักพัฒนาเว็บ
ส่วน
พร้อมให้บริการใน M120

มีส่วนร่วมและแชร์ความคิดเห็น

โปรดทราบว่าข้อเสนอ Select URL API อยู่ระหว่างการหารือและการพัฒนาอย่างต่อเนื่อง จึงอาจมีการเปลี่ยนแปลงได้

เรายินดีรับฟังความคิดเห็นของคุณเกี่ยวกับ Select URL API