ఆ ఈవెంట్లు ఎంచుకున్న ప్రాక్సీని వర్తింపజేయాల్సి వచ్చినప్పుడు, Manifest V3 సేవా వర్కర్ అత్యున్నత స్థాయిలో onStartup మరియు onInstalledని సింక్రనస్గా నమోదు చేయండి. ఉద్దేశపూర్వకంగా ఒకే మార్గానికి కట్టివేయబడిన ఎక్స్టెన్షన్ కోసం:

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 ప్రాక్సీ అనుమతిని ప్రకటించి, ఈ బ్యాక్గ్రౌండ్ వర్కర్కు పేరు పెట్టాలి. ప్రాక్సీ ప్రామాణీకరణ లేకుండా అనుమతించబడిన పబ్లిక్ బ్రౌజింగ్ మార్గం కోసం, ఎండ్పాయింట్ను HTTP ప్రాక్సీ జాబితా నుండి ఒక అభ్యర్థితో భర్తీ చేయండి, పోర్ట్ను పూర్ణాంకంగా ఉంచండి.

onStartup అంటే ఎక్స్టెన్షన్ ఇన్స్టాల్ ఉన్న స్థితిలో ప్రొఫైల్ స్టార్టప్. onInstalled అప్డేట్లను కూడా కలిగి ఉంటుంది; అన్ప్యాక్ చేయని ఎక్స్టెన్షన్ను మళ్లీ లోడ్ చేయడం కూడా అప్డేట్గా పరిగణించబడుతుంది. విండో సృష్టి ఈవెంట్ ప్రతి విండోను వివరిస్తుంది మరియు ఒకే సెషన్లో పలుమార్లు సంభవించవచ్చు.

ఎక్స్టెన్షన్లో సేవ్ చేసిన ప్రొఫైల్లు లేదా ఆఫ్ స్విచ్ ఉంటే, ప్రతి అప్డేట్లో హార్డ్కోడ్ చేసిన డిఫాల్ట్ను రీసెట్ చేయడం బదులు ఆ ఎంపికను లోడ్ చేసి వర్తింపజేయనివ్వండి. లిజనర్ నమోదు అత్యున్నత స్థాయిలోనే ఉంటుంది; Chrome హ్యాండ్లర్ను పిలిచినప్పుడు అసింక్రోనస్ పని ప్రారంభం కావచ్చు.

అభివృద్ధి సమయంలో ఇన్స్టాలేషన్ మరియు ప్రొఫైల్ స్టార్టప్ను విడివిడిగా పరీక్షించండి, ప్రతి దానికి కాన్ఫిగరేషన్ ఫలితాన్ని తనిఖీ చేస్తూ. ఇవి రెండు ఇనిషియలైజేషన్ మార్గాలు, మరో విండో తెరవడం ద్వారా వచ్చే సాక్ష్యం కాదు.

సంబంధిత వ్యాసాలు