ນຳໃຊ້ Chrome proxy ໃນເຫດການເລີ່ມຕົ້ນຂອງສ່ວນຂະຫຍາຍ
ລົງທະບຽນຕົວຈັດການເລີ່ມຕົ້ນ ແລະ ການຕິດຕັ້ງສຳລັບສ່ວນຂະຫຍາຍ proxy Manifest V3 ແທນການຜູກການເລີ່ມຕົ້ນກັບໜ້າຕ່າງ browser ໃໝ່.
ລົງທະບຽນ onStartup ແລະ onInstalled ແບບ synchronous ຢູ່ລະດັບເທິງສຸດຂອງ service worker Manifest V3 ເມື່ອເຫດການເຫຼົ່ານັ້ນຕ້ອງນຳໃຊ້ proxy ທີ່ເລືອກ. ສຳລັບສ່ວນຂະຫຍາຍທີ່ຖືກກຳນົດໄວ້ຢ່າງຕັ້ງໃຈໃຫ້ຢູ່ເສັ້ນທາງດຽວ:
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 ຕ້ອງປະກາດສິດ proxy ແລະ ຕັ້ງຊື່ worker ພື້ນຫຼັງນີ້. ສຳລັບເສັ້ນທາງການທ່ອງເວັບສາທາລະນະທີ່ອະນຸຍາດໂດຍບໍ່ມີການພິສູດ proxy, ໃຫ້ປ່ຽນ endpoint ດ້ວຍຜູ້ສະໝັກຈາກລາຍຊື່ proxy HTTP ໂດຍໃຫ້ port ເປັນຈຳນວນເຕັມ.
onStartup ແມ່ນການເລີ່ມ profile ເມື່ອສ່ວນຂະຫຍາຍຖືກຕິດຕັ້ງແລ້ວ. onInstalled ລວມທັງການອັບເດດ, ລວມທັງການໂຫຼດສ່ວນຂະຫຍາຍທີ່ບໍ່ໄດ້ຫຸ້ມຄືນໃໝ່ ເຊິ່ງຖືວ່າເປັນການອັບເດດ. ເຫດການສ້າງໜ້າຕ່າງອະທິບາຍແຕ່ລະໜ້າຕ່າງ ແລະ ອາດເກີດຂຶ້ນຫຼາຍຄັ້ງໃນໜຶ່ງ session.
ຖ້າສ່ວນຂະຫຍາຍມີ profile ທີ່ບັນທຶກໄວ້ ຫຼື ສະວິດປິດ, ໃຫ້ handler ໂຫຼດ ແລະ ນຳໃຊ້ຕົວເລືອກນັ້ນ ແທນການຕັ້ງຄ່າເລີ່ມຕົ້ນທີ່ຂຽນໄວ້ໃນໂຄດຄືນໃໝ່ທຸກຄັ້ງທີ່ອັບເດດ. ການລົງທະບຽນ listener ຍັງຢູ່ລະດັບເທິງສຸດ; ວຽກແບບ asynchronous ສາມາດເລີ່ມໄດ້ເມື່ອ Chrome ເອີ້ນ handler.
ທົດສອບການຕິດຕັ້ງ ແລະ ການເລີ່ມ profile ແຍກກັນໃນລະຫວ່າງການພັດທະນາ, ໂດຍກວດເບິ່ງຜົນຂອງການຕັ້ງຄ່າສຳລັບແຕ່ລະອັນ. ນີ້ແມ່ນສອງເສັ້ນທາງການເລີ່ມຕົ້ນ ບໍ່ແມ່ນຫຼັກຖານທີ່ໄດ້ຈາກການເປີດໜ້າຕ່າງອື່ນ.