ไทย

วิดีโอและคำบรรยาย · โปรแกรมดาวน์โหลดภาพขนาดย่อของ YouTube และโปรแกรมดูข้อมูลเมตา

คำขอภาพขนาดย่อของ YouTube ทำงานอย่างไร: รหัสวิดีโอ ชื่อขนาด และ i.ytimg.com

· มันทำงานอย่างไร

youtube ภาพขนาดย่อ http

ตัวระบุวิดีโอที่แยกออกเป็นคำขอรูปภาพขนาดย่อหลายรายการ
ภาพประกอบเวกเตอร์ต้นฉบับ ToolAcre

ภาพขนาดย่อของ YouTube ใช้งานได้ตามที่อยู่ที่สามารถคาดเดาได้ ซึ่งสร้างขึ้นจากรหัสวิดีโอและชื่อขนาด โพสต์นี้จะอธิบายวิธีการสร้างคำขอเหล่านั้น สิ่งที่กลับมา และเหตุใดเครื่องมือจึงสามารถแสดงรายการทุกขนาดโดยไม่ต้องแตะตัววิดีโอ

คุณมีลิงก์และต้องการรูปภาพ — งานประจำวันเบื้องหลังการดาวน์โหลดภาพขนาดย่อ

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

ToolAcre แยกวิเคราะห์ลิงก์ที่วางในเบราว์เซอร์ก่อนที่จะส่งคำขอใดๆ ขั้นตอนในเครื่องนั้นแยกการทำความเข้าใจอินพุตจากการดึงเนื้อหาสาธารณะ ดังนั้นโฮสต์ที่ไม่ถูกต้องหรือรหัสที่มีรูปแบบไม่ถูกต้องจึงสามารถปฏิเสธได้โดยไม่ต้องติดต่อ Google ในบันทึกคำขอ การวางที่ไม่ถูกต้องจึงไม่ควรสร้างรายการ i.ytimg.com เลย เฉพาะ ID ที่ผ่านการตรวจสอบแล้วเท่านั้นที่จะเข้าสู่การตรวจสอบรูปภาพ

โฮสต์รูปภาพ: i.ytimg.com — ตำแหน่งที่แสดงภาพขนาดย่อ และเหตุใดจึงแยกจาก youtube.com

ไฟล์ภาพมาจาก i.ytimg.com ไม่ใช่โฮสต์ของหน้าสำหรับดู การเก็บโปสเตอร์แบบคงที่ไว้บนโฮสต์รูปภาพช่วยให้ลูกค้าร้องขอ JPEG ได้โดยตรง โดยไม่ต้องโหลดโปรแกรมเล่น คำแนะนำ ความคิดเห็น หรือเพจ JavaScript ผลที่ตามมาสามารถประเมินการตอบสนองเป็นรูปภาพได้เอง โดยไม่ต้องตีความมาร์กอัปของผู้เล่น หรือรอให้หน้าสำหรับดูแบบเต็มเริ่มต้น

โฮสต์รูปภาพโดยตรงยังคงเป็นบริการเครือข่าย ไม่ใช่การประมวลผลในเครื่อง ตัวบล็อกโฆษณา โหมดออฟไลน์ พร็อกซีที่มีการจัดการ หรือนโยบาย DNS สามารถหยุดคำขอได้ และ Google ได้รับคำขอพร้อมกับส่วนหัว Origin ที่มาจากเบราว์เซอร์ DevTools สามารถพิสูจน์ได้ว่าคำขอไปอยู่ที่ไหน ในขณะที่การถอดรหัสการตอบสนองจะให้หลักฐานแยกต่างหากที่จำเป็นในการแยกแยะอาร์ตเวิร์กออกจากทางเลือกเล็กๆ น้อยๆ ของ YouTube

รูปแบบที่อยู่ — รหัสวิดีโอบวกชื่อขนาด เช่น ค่าเริ่มต้น, mqdefault, hqdefault, sddefault หรือ maxresdefault

รูปแบบที่นำไปใช้คือ https://i.ytimg.com/vi/VIDEO_ID/VARIANT.jpg. ToolAcre แทนที่หนึ่งใน maxresdefault, sddefault, hqdefault, mqdefault, default, hq1, hq2 หรือ hq3 หลังจากตรวจสอบความถูกต้องของรูปร่าง ID การตรวจสอบชื่อทั้งหมดจะป้องกันการตอบสนอง 200 ซึ่งมีทางเลือกเล็กน้อยจากการชนะตัวแปรอื่นที่มีอาร์ตเวิร์กที่ใช้งานได้ก่อนเวลาอันควร

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

สิ่งที่การตอบสนองพิสูจน์ได้: สถานะ ไบต์ และมิติที่ถอดรหัสรวมกัน

โครงร่างถือว่าสถานะ HTTP เป็นการพิสูจน์ว่ามีขนาดอยู่ แต่การใช้งานแก้ไขการอ้างสิทธิ์นั้น ผู้สมัครที่ขาดหายไปอาจเป็น 404 ข้อผิดพลาด HTTP อื่น หรือการตอบกลับ 200 ที่สำเร็จซึ่งมีตัวยึดตำแหน่ง 120×90 ของ YouTube รายงานที่ลงวันที่จะบันทึกการตอบสนองที่ส่งไปยังเบราว์เซอร์ที่ลงชื่อออกแล้วในการทำงานนั้น มันไม่สามารถสร้างโปสเตอร์เก่าๆ ขึ้นมาใหม่ซึ่งก่อนหน้านี้มีเส้นทางที่คาดเดาได้เหมือนกัน

ToolAcre อ่านเนื้อหาเป็น Blob และถอดรหัสมิติที่แท้จริงของมัน เนื้อความที่ไม่สามารถถอดรหัสได้นั้นเป็นข้อผิดพลาด ในขณะที่ผลลัพธ์ 120×90 สำหรับตัวแปรที่ใหญ่กว่านั้นถูกทำเครื่องหมายว่าหายไป สถานะ ขนาด และไบต์จึงอธิบายหลักฐานที่แตกต่างกัน เนื่องจากรูปภาพนี้มาจาก Google โดยตรง การตรวจสอบนี้จึงปรับปรุงความแม่นยำโดยไม่ทำให้การค้นหาเป็นความลับจากบริการที่จัดหารูปภาพดังกล่าว

ตัวอย่างการทำงาน: สร้างคำขอ JPEG ทั้งหมดแปดรายการสำหรับวิดีโอเดียว

สำหรับ ID ที่ถูกต้องหนึ่งรหัส เครื่องมือจะสร้าง URL JPEG แปดรายการ แทนที่จะเป็น 5 รายการที่ระบุไว้ในโครงร่าง โดยจะตรวจสอบชื่อผู้โพสต์ทั้งห้ารายบวก hq1, hq2 และ hq3 โดยรักษาลำดับแค็ตตาล็อกไว้ ดังนั้นผู้โพสต์ที่ต้องการที่ใหญ่ที่สุดจึงถือเป็นอันดับแรก นักตัดต่อจึงสามารถเปรียบเทียบอาร์ตเวิร์กหลักของการอัปโหลดกับตำแหน่งเฟรมที่ถ่ายไว้สามตำแหน่ง แทนที่จะเข้าใจผิดว่าภาพนิ่งเหล่านั้นเป็นความละเอียดโปสเตอร์อื่น

คำขอหนึ่งรายการอาจให้ผล 1280×720, อีกคำขอหนึ่ง 480×360 และคำขอที่ไม่บังคับอาจส่งคืนตัวยึดตำแหน่งหรือ 404 รายการจะรายงานผลลัพธ์แต่ละรายการแทนที่จะอ้างว่าลำดับสำรองหนึ่งลำดับสามารถรับรองทุกการอัปโหลด หลักฐานที่เทียบเคียงกันนั้นมีประโยชน์อย่างยิ่งเมื่อการอัปโหลดเก่าๆ มีโปสเตอร์ที่มีความละเอียดมาตรฐาน แต่ไม่มีไฟล์ความละเอียดสูงสุดของแท้

ทำไมสิ่งนี้ถึงไม่กระทบต่อวิดีโอ — ภาพขนาดย่อเป็นไฟล์สาธารณะที่แยกจากกัน ไม่ใช่ส่วนหนึ่งของสตรีม

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

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

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

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

การสอบสวนภาพขนาดย่ออาจล้มเหลวผ่านเครือข่าย ผ่านการตอบกลับ HTTP ที่ไม่สำเร็จ ผ่านตัวยึดตำแหน่ง 200 หรือเนื่องจากเนื้อหาไม่สามารถถอดรหัสเป็นรูปภาพได้ อินเทอร์เฟซทำให้คลาสความล้มเหลวเหล่านี้แตกต่างออกไป ดังนั้นการขาดงานจึงไม่เกินจริง การขัดจังหวะของพร็อกซีเรียกร้องให้ลองใหม่ ในขณะที่ตัวยึดตำแหน่ง 120×90 ที่ถอดรหัสแล้ว จะแสดงโดยเฉพาะว่าไม่ได้ส่งตัวแปรที่ใหญ่กว่าที่ร้องขอ

Takeaway: ที่อยู่ที่คาดเดาได้ ประกาศล่วงหน้า — โปรแกรมดาวน์โหลดภาพขนาดย่อของ YouTube แสดงรายการลิงก์ทุกขนาดอย่างไร

การแยกวิเคราะห์เกิดขึ้นก่อนการดึงข้อมูล หลังจากการดึงข้อมูล เบราว์เซอร์จะส่งคำขอ GET ที่ไม่ระบุตัวตนโดยไม่ระบุตัวตน โดยไม่มีผู้อ้างอิง ไม่มีแคชที่จัดเก็บ และติดตามการเปลี่ยนเส้นทางโดยตรงไปยัง i.ytimg.com และ www.youtube.com; Google เห็นคำขอเหล่านั้นและส่วนหัว Origin ในขณะที่ไม่มีเซิร์ฟเวอร์หรือพร็อกซี ToolAcre อยู่ระหว่างคำขอเหล่านั้น ดังนั้น DevTools ควรแสดงการรับส่งข้อมูลรูปภาพที่ออกจากเบราว์เซอร์สำหรับ Google แต่ไม่มีการเรียก ToolAcre API ที่มีรหัสวิดีโอที่วางอยู่

การค้นหา oEmbed ที่มาพร้อมกันใช้นาฬิกาตามรูปแบบบัญญัติ URL ที่มี ID เดียวกันบวกกับ format=json การดำเนินการดังกล่าวอาจล้มเหลวโดยเครือข่าย การตอบสนอง HTTP หรือ JSON ที่ไม่ถูกต้อง และคำขอทั้งสองไม่สามารถเรียกเนื้อหาที่เป็นส่วนตัว ถูกลบ หรือจำกัดอายุได้ หลักฐานภาพขนาดย่อและหลักฐานเมตาดาต้ายังคงแยกจากกัน: JPEG สามารถใช้ได้แม้ว่าบันทึกที่มีโครงสร้างจะล้มเหลว และไม่มีสาขาใดพิสูจน์ได้ว่ามีการเข้าถึงที่ยั่งยืน