প্ৰফাইল সলনিৰ বাবে এটা Chrome MV3 প্ৰক্সী প্ৰমাণীকৰণ শ্ৰোতা পঞ্জীয়ন কৰক
Manifest V3 প্ৰমাণীকৰণ শ্ৰোতাক ছিংক্ৰনাছভাৱে পঞ্জীয়ন কৰক আৰু ইভেন্ট কলবেকৰ ভিতৰত বৰ্তমানৰ প্ৰক্সী একাউণ্ট পঢ়ক।
প্ৰক্সী প্ৰফাইল সলনি কৰিলে নিৰ্বাচিত একাউণ্ট সলনি হোৱা উচিত, আন এটা onAuthRequired শ্ৰোতা যোগ কৰা নহয়। নহ'লে পুৰণি closures-এ পূৰ্বৰ নিৰ্বাচনৰ একাউণ্টেৰে উত্তৰ দি থাকিব পাৰে।
চাৰ্ভিচ ৱৰ্কাৰৰ ওপৰৰ স্তৰত এটা নামযুক্ত শ্ৰোতা পঞ্জীয়ন কৰক। ইভেন্ট অহাৰ সময়ত বৰ্তমানৰ একাউণ্ট পঢ়ক:
function answerProxyChallenge(details, reply) {
if (!details.isProxy) {
reply({});
return;
}
chrome.storage.session.get('selectedProxy').then(({selectedProxy: p}) => {
if (!p || details.challenger.host !== p.host ||
details.challenger.port !== p.port) {
reply({});
return;
}
reply({authCredentials: {username: p.username, password: p.password}});
}).catch(() => reply({cancel: true}));
}
chrome.webRequest.onAuthRequired.addListener(
answerProxyChallenge,
{urls: ['<all_urls>']},
['asyncBlocking'],
);এই অংশই ধৰি লৈছে যে এক্সটেনশ্যনে ইতিমধ্যে নিৰ্বাচিত HTTP প্ৰক্সী selectedProxy-ৰ অধীনত সংৰক্ষণ কৰে, এটা সংখ্যাত্মক প'ৰ্ট আৰু ইয়াৰ উদ্দেশ্যিত একাউণ্টৰ সৈতে। মেনিফেষ্টৰ বাবে webRequest, webRequestAuthProvider, storage আৰু প্ৰয়োজনীয় host অনুমতি লাগে। প্ৰক্সী নিৰ্বাচনৰ নিজৰ বাবেও proxy অনুমতি লাগে।
পঞ্জীয়ন ছিংক্ৰনাছভাৱে হয়। Chrome-ৰ এটা সংস্থাপিত শ্ৰোতা থকাৰ পিছত কলবেকৰ ভিতৰত storage পঢ়া হয়। প্ৰাৰম্ভিক storage promise সমাধান হোৱাৰ পিছতহে পঞ্জীয়ন কৰিলে সজাগ হোৱাৰ ব্যৱধান সৃষ্টি হয়।
মুকলি কৰাৰ আগতে এটা প্ৰত্যাখ্যান সীমা যোগ কৰক
এই অংশই পঞ্জীয়ন আৰু একাউণ্ট নিৰ্বাচন দেখুৱায়। প্ৰতিটো অনুৰোধৰ বাবে এটা সীমিত পুনৰ্চেষ্টা ৰেকৰ্ড যোগ কৰক যাতে প্ৰত্যাখ্যান কৰা পাছৱৰ্ড অসীমভাৱে নপঠিওৱা হয়। সমাপ্তি বা বিফলতাৰ সময়ত সেই ৰেকৰ্ড পৰিষ্কাৰ কৰক। ৱৰ্কাৰ বন্ধ হ'লে ৱৰ্কাৰ globals নোহোৱা হ'ব পাৰে, সেয়ে সজাগ হোৱাৰ মাজত প্ৰয়োজনীয় অৱস্থা উপযুক্ত এক্সটেনশ্যন storage এলেকাত ৰাখক।
storage.session ব্ৰাউজাৰ ছেছনৰ ভিতৰত ৱৰ্কাৰ পুনৰাৰম্ভত টিকি থাকে; ব্ৰাউজাৰ পুনৰাৰম্ভৰ মাজত স্থায়ী একাউণ্ট storage নহয়। কোনো নিৰ্বাচিত একাউণ্ট উপলব্ধ নহ'লে এক্সটেনশ্যই কি কৰে সেয়া নিৰ্ধাৰণ কৰক।
isProxy আৰু challenger পৰীক্ষাই এটা অসম্পৰ্কিত ৱেবছাইট challenge-ক এই একাউণ্ট নোপোৱাকৈ ৰাখে। যদি ব্ৰাউজাৰে কেতিয়াও ইভেন্ট নপঠিয়ায়, শ্ৰোতা পৰিষ্কাৰ কৰাৰ দ্বাৰা একমাত্ৰে সেয়া উৎপন্ন কৰিব নোৱাৰি: প্ৰকৃত অনুৰোধ, অনুমতি আৰু ব্ৰাউজাৰ আচৰণ সুকীয়াকৈ পৰীক্ষা কৰক।