Áp dụng proxy Chrome tại các sự kiện khởi động của tiện ích
Đăng ký trình xử lý khởi động và cài đặt cho tiện ích proxy Manifest V3 thay vì gắn việc khởi tạo với một cửa sổ trình duyệt mới.
Đăng ký onStartup và onInstalled một cách đồng bộ ở cấp cao nhất của service worker Manifest V3 khi các sự kiện đó phải áp dụng proxy đã chọn. Với tiện ích được cố định có chủ đích vào một tuyến duy nhất:
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 phải khai báo quyền proxy và đặt tên cho worker nền này. Với tuyến duyệt web công khai được phép mà không cần xác thực proxy, hãy thay điểm cuối bằng một ứng viên từ danh sách proxy HTTP, giữ cổng là số nguyên.
onStartup là khởi động hồ sơ khi tiện ích đã được cài đặt. onInstalled cũng bao gồm các bản cập nhật, kể cả việc tải lại tiện ích chưa đóng gói được tính là cập nhật. Sự kiện tạo cửa sổ mô tả từng cửa sổ và có thể kích hoạt nhiều lần trong một phiên.
Nếu tiện ích có hồ sơ đã lưu hoặc công tắc tắt, hãy để trình xử lý tải và áp dụng lựa chọn đó thay vì đặt lại giá trị mặc định viết cứng ở mỗi lần cập nhật. Việc đăng ký trình lắng nghe vẫn ở cấp cao nhất; công việc bất đồng bộ có thể bắt đầu khi Chrome gọi trình xử lý.
Hãy thử cài đặt và khởi động hồ sơ riêng rẽ trong quá trình phát triển, kiểm tra kết quả cấu hình cho từng trường hợp. Đó là hai đường khởi tạo, không phải bằng chứng có được khi mở một cửa sổ khác.