การรองรับส่วนหัว HTTP สำหรับ Storage Access API

หลังจากช่วงทดลองใช้ ต้นทางที่ประสบความสำเร็จแล้ว เราจะเปิดตัว ส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูล (SAH) ใน Chrome 133

ส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูลคืออะไร

ส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูลคือส่วนหัว HTTP ใหม่ที่อนุญาตให้เนื้อหาที่ฝัง (เช่น วิดเจ็ตโซเชียลมีเดีย ปฏิทิน เครื่องมือแบบอินเทอร์แอกทีฟ และรูปภาพ) ตรวจสอบ การเข้าถึงคุกกี้ที่ไม่ได้แบ่งพาร์ติชัน ก่อนหน้านี้ คุณทำได้ด้วย JavaScript เท่านั้น Sec-Fetch-Storage-Accessส่วนหัวของคำขอและActivate-Storage-Accessส่วนหัวของการตอบกลับ ใหม่ช่วยปรับปรุงประสิทธิภาพและประสบการณ์ของผู้ใช้สำหรับเว็บไซต์ที่ใช้เนื้อหาที่ฝังไว้ และรองรับการโหลดทรัพยากรที่ไม่ใช่ iframe ดูรายละเอียดการติดตั้งใช้งานได้ใน เอกสารประกอบ

ส่วนหัวของคำขอ

  Sec-Fetch-Storage-Access: <access-status>

เมื่อผู้ใช้เข้าชมหน้าเว็บที่ฝังเนื้อหาข้ามเว็บไซต์ เบราว์เซอร์จะ รวมส่วนหัว Sec-Fetch-Storage-Access โดยอัตโนมัติในคำขอข้ามเว็บไซต์ ที่อาจต้องใช้ข้อมูลเข้าสู่ระบบ (เช่น คุกกี้) ส่วนหัวนี้ระบุ สถานะสิทธิ์การเข้าถึงคุกกี้ของฝัง และอาจมีค่าต่อไปนี้

  • none: การฝังไม่มีสิทธิ์ storage-access และ จึงไม่มีสิทธิ์เข้าถึงคุกกี้ที่ไม่ได้แบ่งพาร์ติชัน

  • inactive: การฝังมีสิทธิ์ storage-access แต่ไม่ได้เลือกใช้ในบริบทปัจจุบัน การฝังไม่มีสิทธิ์เข้าถึงคุกกี้ ที่ไม่ได้แบ่งพาร์ติชัน

  • active: การฝังมีการเข้าถึงคุกกี้ที่ไม่ได้แบ่งพาร์ติชัน ค่านี้จะรวมอยู่ในคำขอข้ามต้นทางที่มีสิทธิ์เข้าถึงคุกกี้ที่ไม่ได้แบ่งพาร์ติชัน

ส่วนหัวการตอบกลับ

  Activate-Storage-Access: <retry-or-load>

ส่วนหัว Activate-Storage-Access จะสั่งให้เบราว์เซอร์ลองส่งคำขออีกครั้งโดยใช้คุกกี้ หรือโหลดทรัพยากรโดยตรงด้วย Storage Access API (SAA) ที่เปิดใช้งาน ส่วนหัวอาจมีค่าดังต่อไปนี้

  • load: สั่งให้เบราว์เซอร์ให้สิทธิ์เข้าถึงคุกกี้ที่ไม่ได้แบ่งพาร์ติชัน แก่ผู้ฝังสำหรับทรัพยากรที่ขอ การรวมส่วนหัวนี้เทียบเท่ากับ การเรียก document.requestStorageAccess() หากได้รับstorage-access สิทธิ์ ระบบจะไม่แสดงข้อความแจ้งเพิ่มเติมต่อผู้ใช้

  • retry: เซิร์ฟเวอร์ตอบกลับว่าเบราว์เซอร์ควรเปิดใช้งานสิทธิ์เข้าถึงพื้นที่เก็บข้อมูล แล้วลองส่งคำขออีกครั้ง

  Activate-Storage-Access: retry; allowed-origin="https://site.example"
  Activate-Storage-Access: retry; allowed-origin=*
  Activate-Storage-Access: load

ข้อดีหลัก

ส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูลเป็นวิธีที่แนะนำและมีประสิทธิภาพมากกว่าในการใช้ Storage Access API (SAA) โดยรวมแล้ว การเปลี่ยนแปลงนี้จะช่วยปรับปรุงสิ่งต่างๆ ดังนี้

  • รองรับการฝังที่ไม่ใช่ iframe: เปิดใช้ SAA สำหรับทรัพยากรที่หลากหลายมากขึ้น
  • ลดการใช้เครือข่าย: คำขอน้อยลงและเพย์โหลดเล็กลง
  • การใช้งาน CPU น้อยลง: การประมวลผล JavaScript น้อยลง
  • ปรับปรุงประสบการณ์ของผู้ใช้: ไม่ต้องโหลดระหว่างกลางที่ขัดจังหวะ

อัปเดตโซลูชัน

ฟีเจอร์ส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูลมี 2 กรณีที่คุณอาจต้องการอัปเดตโค้ด ดังนี้

  • คุณใช้ SAA และต้องการให้ได้ประสิทธิภาพที่ดีขึ้นโดยใช้ตรรกะส่วนหัวสำหรับคำขอ storage-access ที่ตามมา
  • คุณมีการตรวจสอบหรือตรรกะที่ขึ้นอยู่กับว่าส่วนหัว Origin รวมอยู่ในคำขอไปยังเซิร์ฟเวอร์ของคุณหรือไม่

ดูเอกสารประกอบ เพื่อดูวิธีใช้ Storage Access Headers ในโซลูชัน

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

หากมีข้อเสนอแนะหรือพบปัญหา โปรดแจ้งปัญหา นอกจากนี้ คุณยังดูข้อมูลเพิ่มเติมเกี่ยวกับส่วนหัวการเข้าถึงพื้นที่เก็บข้อมูลได้ในคำอธิบายใน GitHub