API proxy toàn cục của Firefox yêu cầu quyền truy cập cửa sổ riêng tư
Kiểm tra quyền truy cập duyệt web riêng tư của tiện ích khi proxy.settings.set ném lỗi, vì cấu hình toàn cục ảnh hưởng đến cả cửa sổ thường và cửa sổ riêng tư.
Cài đặt proxy toàn cục của Firefox ảnh hưởng đến cả cửa sổ thường và cửa sổ riêng tư. Vì vậy API proxy.settings yêu cầu tiện ích phải có quyền truy cập cửa sổ riêng tư, ngay cả khi thao tác được bắt đầu từ cửa sổ thường.
Tiện ích có thể kiểm tra điều kiện đó trước khi thay đổi cài đặt:
const allowed = await browser.extension.isAllowedIncognitoAccess();
if (!allowed) {
throw new Error('Private-window access is required for global proxy settings');
}
await browser.proxy.settings.set({ value: proxyConfig });proxyConfig là đối tượng cấu hình hiện có ở định dạng Firefox. Tiện ích cũng cần quyền API proxy thông thường của mình.
Khi manifest cho phép sử dụng riêng tư, người dùng kiểm soát quyền truy cập đó trong phần chi tiết quản lý của tiện ích thông qua Run in Private Windows. Việc kiểm tra báo cáo lựa chọn đó; nó không cấp quyền tự động.
Nếu không có quyền truy cập cần thiết, proxy.settings.set sẽ ném ngoại lệ. Điều đó xảy ra trước khi tiện ích chứng minh bất kỳ kết nối nào tới proxy được đề xuất, nên việc thay đổi IP hoặc cổng của nó không liên quan đến lỗi này.
Xử lý việc từ chối trong giao diện của tiện ích và giữ lựa chọn của người dùng. Sau khi quyền và việc áp dụng cấu hình thành công, hãy đánh giá riêng tuyến đường đích thực tế.