يمكن لمتصفح Puppeteer واحد أن يحتفظ بسياقات وكيل منفصلة
استخدم BrowserContextOptions.proxyServer في Puppeteer25.16.0 عندما تحتاج مجموعات من الصفحات إلى مسارات وكيل متمايزة داخل متصفح Chromium واحد.
يوفر Puppeteer 25.16.0 خيار proxyServer عند إنشاء سياق متصفح. وفي متصفح Chromium قائم، يمكن لصفحات السياق الجديد استخدام وسيط مختار، بما في ذلك مرشح HTTP عام من قائمة وسطاء HTTP:
const context = await browser.createBrowserContext({
proxyServer: 'http://proxy.example:8080',
});
try {
const page = await context.newPage();
await page.goto('https://www.example.com/');
} finally {
await context.close();
}أنشئ سياقاً آخر بخيار proxyServer مختلف لمسار ثانٍ. الصفحتان المنشأتان في السياق نفسه تتشاركان سياسة الوكيل الخاصة بذلك السياق؛ ومجرد فتح علامة تبويب لا يختار نقطة نهاية جديدة.
اسم الخيار هو proxyServer. أما أمثلة createIncognitoBrowserContext الأقدم فتنتمي إلى جيل سابق من واجهة API.
يقبل BrowserContextOptions أيضاً قائمة proxyBypassList. أبقِ الاستثناءات المباشرة داخل سياسة ذلك السياق بدلاً من افتراض أنها جاءت من سياق آخر.
في وكيل HTTP المدعوم الذي يستخدم اسم مستخدم وكلمة مرور، يوفر Page.authenticate بيانات الاعتماد قبل التنقل. يحفز عنوان URL للوكيل الوسيط، ويوفر نداء المصادقة الحساب.
هذا عمل شبكي في المتصفح. أما الحزمة التي تعترض طلب صفحة وتلبيه باستجابة عميل Node HTTP فتنشئ مسار نقل مختلفاً بسلوكه الخاص في الكوكيز والترويسات وTLS.
لا يزال المتصل مسؤولاً عن عمر المتصفح المشترك. وإغلاق سياق واحد يغلق صفحاته المرتبطة دون إنهاء السياقات الأخرى.