אַוועקשטעלן chromedp'ס ProxyServer אויף דעם ExecAllocator
שאַפֿט דעם בלעטערער־קאָנטעקסט פֿון דעם ExecAllocator וואָס טראָגט ProxyServer, כּדי דער געפּלאַנטער Chromium־פּראָצעס זאָל באַקומען זײַן proxy־פֿאָן.
chromedp.ProxyServer איז אן אפציע פֿאַר אָנהייבן דעם בלעטערער. פֿאַרווענדט עס אויפֿן allocator וואָס שאַפֿט דעם Chromium פּראָצעס:
opts := append(chromedp.DefaultExecAllocatorOptions[:],
chromedp.ProxyServer("http://proxy.example:8080"),
)
allocCtx, cancelAllocator := chromedp.NewExecAllocator(
context.Background(), opts...,
)
defer cancelAllocator()
tabCtx, cancelTab := chromedp.NewContext(allocCtx)
defer cancelTab()
err := chromedp.Run(tabCtx,
chromedp.Navigate("https://www.example.com/"),
)
דער קאָד באַלענגט אין דער באַשטייענדיקער פֿונקציע פֿון דער אַפּליקאַציע, מיט געוויינטלעכער באַהאַנדלונג פֿון פֿעלערן פֿאַר err. NewContext ירשעט דעם allocator פֿון allocCtx. אַ קאָנטעקסט וואָס ווערט געשאַפֿן פֿון אַן אַנדער עלטער קען שאַפֿן אַן אַנדער בלעטערער אָן דער אַפֿציע.
די proxy URL באַצייכנט אַ HTTP אויסהערער; עפֿנטלעכע קאַנדידאַטן זענען פֿאַראַן אין דער HTTP proxy ליסטע; דער בלאַט בלײַבט אַ HTTPS ציל. ProxyServer פֿאַרמאַפּט זיך צו Chromium'ס --proxy-server פֿאָן, נישט צו Go'ס net/http proxy קאָנפֿיגוראַציע.
Chromium נעמט נישט אָן באַניצער־נאָמען און פּאַראָל וואָס זענען אַריינגעלייגט אין אַ מאַנואַלער proxy URL. אַן אויטענטיפֿיצירטער endpoint פֿאָדערט אַ געשטיצטע בלעטערער־אויטענטיפֿיקאַציע אָדער אַ מיטלערישער אָרדענונג; צוצוגעבן user:password צו דעם פֿאָן איז נישט גלײַך צו URL־אויטענטיפֿיקאַציע אין אַ HTTP קליענט. Chrome'ס CDP אויטענטיפֿיקאַציע־געשעעניש שטראָם איז איינער פֿון די געשטיצטע וועגן צו באַהאַנדלען די בדעה'דיקע proxy פֿאָדערונג.
האַלט דעם allocator לעבעדיק ביז די בלעטערער־אַרבעט איז פֿאַרענדיקט. זײַן אָפּשטעלן געהערט אויך צו דער פּראָצעס־רייניקונג, בשעת אָפּשטעלן דעם טאַב באַגרענעצט דעם פֿאַרבונדענעם בלעטערער־קאָנטעקסט.