Firefox ਦਾ ਗਲੋਬਲ ਪ੍ਰੌਕਸੀ API ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ ਵਿੱਚ ਪਹੁੰਚ ਮੰਗਦਾ ਹੈ
ਜਦੋਂ proxy.settings.set ਗਲਤੀ ਦਿੰਦਾ ਹੈ ਤਾਂ ਐਕਸਟੈਂਸ਼ਨ ਦੀ ਪ੍ਰਾਈਵੇਟ ਬ੍ਰਾਊਜ਼ਿੰਗ ਪਹੁੰਚ ਜਾਂਚੋ, ਕਿਉਂਕਿ ਗਲੋਬਲ ਕੌਨਫਿਗਰੇਸ਼ਨ ਆਮ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਦੋਵੇਂ ਵਿੰਡੋ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੀ ਹੈ।
Firefox ਦੀਆਂ ਗਲੋਬਲ ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗਾਂ ਆਮ ਅਤੇ ਪ੍ਰਾਈਵੇਟ ਦੋਵੇਂ ਵਿੰਡੋ 'ਤੇ ਲਾਗੂ ਹੁੰਦੀਆਂ ਹਨ। ਇਸ ਲਈ proxy.settings API ਲਈ ਜ਼ਰੂਰੀ ਹੈ ਕਿ ਐਕਸਟੈਂਸ਼ਨ ਕੋਲ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ ਵਿੱਚ ਪਹੁੰਚ ਹੋਵੇ, ਭਾਵੇਂ ਕਾਰਵਾਈ ਆਮ ਵਿੰਡੋ ਤੋਂ ਸ਼ੁਰੂ ਹੋਈ ਹੋਵੇ।
ਸੈਟਿੰਗ ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਐਕਸਟੈਂਸ਼ਨ ਇਹ ਸ਼ਰਤ ਜਾਂਚ ਸਕਦਾ ਹੈ:
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 ਮੌਜੂਦਾ Firefox ਫਾਰਮੈਟ ਵਾਲੀ ਕੌਨਫਿਗਰੇਸ਼ਨ ਵਸਤੂ ਹੈ। ਐਕਸਟੈਂਸ਼ਨ ਨੂੰ ਆਪਣੀ ਆਮ ਪ੍ਰੌਕਸੀ API ਇਜਾਜ਼ਤ ਵੀ ਚਾਹੀਦੀ ਹੈ।
ਜਦੋਂ manifest ਪ੍ਰਾਈਵੇਟ ਵਰਤੋਂ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਵਰਤੋਂਕਾਰ ਐਕਸਟੈਂਸ਼ਨ ਦੇ ਪ੍ਰਬੰਧਨ ਵੇਰਵਿਆਂ ਵਿੱਚ Run in Private Windows ਰਾਹੀਂ ਉਸ ਪਹੁੰਚ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ। ਜਾਂਚ ਉਸ ਚੋਣ ਦੀ ਰਿਪੋਰਟ ਕਰਦੀ ਹੈ; ਇਹ ਇਜਾਜ਼ਤ ਆਪਣੇ ਆਪ ਨਹੀਂ ਦਿੰਦੀ।
ਲੋੜੀਂਦੀ ਪਹੁੰਚ ਤੋਂ ਬਿਨਾਂ proxy.settings.set ਅਪਵਾਦ ਸੁੱਟਦਾ ਹੈ। ਇਹ ਐਕਸਟੈਂਸ਼ਨ ਵੱਲੋਂ ਸੁਝਾਏ ਪ੍ਰੌਕਸੀ ਨਾਲ ਕੋਈ ਵੀ ਕਨੈਕਸ਼ਨ ਦਿਖਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਹੁੰਦਾ ਹੈ, ਇਸ ਲਈ ਇਸਦਾ IP ਜਾਂ ਪੋਰਟ ਬਦਲਨ ਦਾ ਇਸ ਅਸਫਲਤਾ ਨਾਲ ਕੋਈ ਸੰਬੰਧ ਨਹੀਂ।
ਐਕਸਟੈਂਸ਼ਨ ਦੇ UI ਵਿੱਚ ਇਨਕਾਰ ਨੂੰ ਸੰਭਾਲੋ ਅਤੇ ਵਰਤੋਂਕਾਰ ਦੀ ਚੋਣ ਬਣਾਈ ਰੱਖੋ। ਇਜਾਜ਼ਤ ਅਤੇ ਕੌਨਫਿਗਰੇਸ਼ਨ ਲਾਗੂ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਅਸਲ ਮੰਜ਼ਿਲ ਮਾਰਗ ਦਾ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਮੁਲਾਂਕਣ ਕਰੋ।