ใช้พร็อกซีของ Chrome ที่เหตุการณ์เริ่มต้นของส่วนขยาย
ลงทะเบียนตัวจัดการการเริ่มต้นและติดตั้งสำหรับส่วนขยายพร็อกซี Manifest V3 แทนการผูกการเริ่มต้นกับหน้าต่างเบราว์เซอร์ใหม่
ลงทะเบียน onStartup และ onInstalled อย่างซิงโครนัสที่ระดับบนสุดของ service worker Manifest V3 เมื่อเหตุการณ์เหล่านั้นต้องใช้พร็อกซีที่เลือกไว้ สำหรับส่วนขยายที่ตั้งใจตรึงไว้กับเส้นทางเดียว:
function applyProxy() {
chrome.proxy.settings.set({
value: {
mode: 'fixed_servers',
rules: {
singleProxy: {
scheme: 'http',
host: 'proxy.example',
port: 8080,
},
},
},
scope: 'regular',
}, () => {
if (chrome.runtime.lastError) {
console.error(chrome.runtime.lastError.message);
}
});
}
chrome.runtime.onStartup.addListener(applyProxy);
chrome.runtime.onInstalled.addListener(applyProxy);manifest ต้องประกาศสิทธิ์พร็อกซีและระบุชื่อ worker เบื้องหลังนี้ สำหรับเส้นทางการท่องเว็บสาธารณะที่อนุญาตโดยไม่มีการพิสูจน์ตัวตนพร็อกซี ให้เปลี่ยนปลายทางเป็นผู้สมัครจากรายการพร็อกซี HTTP โดยคงพอร์ตเป็นจำนวนเต็ม
onStartup คือการเริ่มต้นโปรไฟล์เมื่อติดตั้งส่วนขยายแล้ว onInstalled ครอบคลุมการอัปเดตด้วย รวมถึงการโหลดส่วนขยายที่ยังไม่แพ็กใหม่ซึ่งนับเป็นการอัปเดต เหตุการณ์สร้างหน้าต่างอธิบายแต่ละหน้าต่างและอาจเกิดขึ้นซ้ำได้ในการใช้งานครั้งเดียว
หากส่วนขยายมีโปรไฟล์ที่บันทึกไว้หรือสวิตช์ปิด ให้ตัวจัดการโหลดและใช้ตัวเลือกนั้นแทนการรีเซ็ตค่าเริ่มต้นที่เขียนตายตัวทุกครั้งที่อัปเดต การลงทะเบียนตัวรับฟังยังคงอยู่ที่ระดับบนสุด งานแบบอะซิงโครนัสสามารถเริ่มได้เมื่อ Chrome เรียกตัวจัดการ
ทดสอบการติดตั้งและการเริ่มต้นโปรไฟล์แยกกันระหว่างการพัฒนา โดยตรวจสอบผลการกำหนดค่าของแต่ละอย่าง ทั้งสองคือเส้นทางการเริ่มต้นสองเส้น ไม่ใช่หลักฐานที่ได้จากการเปิดหน้าต่างอื่น