தற்போதைய Electron பயன்பாடுகளில், கணக்குடன் இணைந்த ஒவ்வொரு WebContentsView-க்கும் அதன் சொந்தப் பெயரிடப்பட்ட அமர்வை வழங்கவும். பயன்பாடு தயாரான பிறகு, முதன்மைச் செயல்முறையில் உள்ள async உதவியாளர் ஒரு காட்சியை அமைக்கலாம்:

const routeSession = session.fromPartition(partitionName);
await routeSession.setProxy({
  mode: 'fixed_servers',
  proxyRules: `http://${proxyHost}:${proxyPort}`,
});
const view = new WebContentsView({
  webPreferences: { session: routeSession },
});
view.webContents.on('login', (event, details, authInfo, callback) => {
  if (!authInfo.isProxy
      || authInfo.scheme.toLowerCase() !== 'basic'
      || authInfo.host !== proxyHost
      || authInfo.port !== proxyPort) return;
  event.preventDefault();
  if (details.firstAuthAttempt) callback(proxyUser, proxyPassword);
  else callback();
});

ஒவ்வொரு தனிமைப்படுத்தப்பட்ட கணக்கிற்கும் தனி partitionName வழங்கி, கேட்பான் மாறிகளை அந்தக் காட்சியின் சொந்த closure-ல் வைத்திருங்கள். persist: இல்லாத பெயர் நினைவக அமர்வை உருவாக்கும். அதே பகிர்வை மீண்டும் பயன்படுத்துவது அதன் அமர்வு நிலையை வேண்டுமென்றே மீண்டும் பயன்படுத்துகிறது.

காட்சியை இருக்கும் சாளரத்துடன் இணைத்து, அதன் ப்ராக்ஸி மற்றும் கையாளி தயாரான பிறகே வழிசெலுத்துங்கள். குறியீடு firstAuthAttempt உட்பட தற்போதைய login நிகழ்வு ஒப்பந்தத்தை இலக்காகக் கொண்டு, நிராகரிக்கப்பட்ட மீண்டும் முயற்சியை அதே கணக்கை முடிவில்லாமல் மீண்டும் அனுப்புவதற்குப் பதிலாக ரத்து செய்கிறது.

கையாளி சவால் நோக்கமிடப்பட்ட Basic HTTP ப்ராக்ஸியிலிருந்து வந்ததா எனச் சரிபார்க்கிறது. இணையதள உள்நுழைவு அந்தச் சான்றுகளுக்குத் தகுதியற்றது.

ப்ராக்ஸி விதிகள் முடிவுப் புள்ளியைத் தேர்ந்தெடுக்கின்றன; login கணக்கை வழங்குகிறது. PAC கோப்புகளும் கைமுறை ப்ராக்ஸி விதிகளும் இந்த callback-இன் கடவுச்சொல்லைத் தாங்களாகவே கொண்டிருக்கவில்லை.

இது HTTP ப்ராக்ஸி அங்கீகாரம். இது Chromium-க்கு SOCKS5 அங்கீகாரத்தைச் சேர்ப்பதில்லை. பின்னர் பாதை மாறும்போது இருக்கும் அமர்வு இணைப்புகளுக்கும் அவற்றின் வழக்கமான வாழ்க்கைச் சுழற்சி மேலாண்மை தேவை.

தொடர்புடைய கட்டுரைகள்