ไทย

วิดีโอและคำบรรยาย · ชุดเครื่องมือคำบรรยาย

วิธีแก้ไขไฟล์คำบรรยายโดยไม่ต้องออกจากอุปกรณ์ของคุณ: ไฟล์ API ไปยัง Blob

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

คำบรรยาย การประมวลผลเบราว์เซอร์ ความเป็นส่วนตัว

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

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

การถอดเสียงเป็นความลับและผู้แปลงต้องการให้คุณอัปโหลด — ปัญหาการประมวลผลฝั่งเบราว์เซอร์แก้ไขได้

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

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

การเลือกไฟล์: ออบเจ็กต์ไฟล์ — วิธีที่เบราว์เซอร์ให้เพจจัดการเป็นไบต์โดยไม่ต้องส่งไปที่ใดก็ได้

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

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

อ่านข้อความในเครื่อง - File.text() และ TextDecoder เปลี่ยนไบต์เป็นสัญญาณในหน่วยความจำ

การอ่านข้อความจะเรียกเมธอดข้อความ File API ซึ่งแก้ไขเป็นสตริงที่ถอดรหัสเป็น UTF-8 สตริงนั้นจะถูกแยกวิเคราะห์เป็นคิวในหน่วยความจำ และการดำเนินการที่ตามมาทุกครั้งจะทำงานบนออบเจ็กต์คิวเหล่านั้น การเลื่อนจะเพิ่มการประทับเวลาจำนวนเต็มมิลลิวินาที การล้างสิ่งทดแทนบนข้อความ การตรวจสอบความถูกต้องจะดำเนินรายการเพื่อค้นหาข้อผิดพลาดในการจัดลำดับและระยะเวลา ไม่มีสิ่งใดแตะต้องไฟล์ต้นฉบับซึ่งไม่เคยเขียนถึง

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

เหตุใดสิ่งนี้จึงทำงานบนเธรดหลักมากกว่าใน Web Worker และขนาดเพดานทำอะไรได้จริง

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

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

การเขียนกลับ: Blob และแอตทริบิวต์การดาวน์โหลด — วิธีที่ไฟล์ที่แก้ไขเข้าถึงดิสก์ของคุณในรูปแบบการดาวน์โหลดใหม่

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

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

ตัวอย่างการทำงาน: การดูแผงเครือข่ายระหว่างการแปลงและทำซ้ำแบบเต็ม — แผงเงียบตั้งแต่เปิดไฟล์ไปจนถึงบันทึกไฟล์

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

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

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

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

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

ประเด็นสำคัญ: ไฟล์ของคุณ แท็บของคุณ ดิสก์ของคุณ — วิธีที่ Subtitle Toolkit ทำงานทั้งหมดภายในเครื่องและให้คุณตรวจสอบได้

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

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