我使用golang chromedp作为无头 webdriver 和ccproxy作为代理服务器,根据这个文档,我设置了凭据标头,但 chrome 也显示基本身份验证弹出窗口。
chromeDP(设置标题):
func (c *Browser) setHeaders() chromedp.Tasks {
authData := base64.StdEncoding.EncodeToString([]byte(c.Proxy.User + ":" + c.Proxy.Password))
headers := map[string]interface{}{
"Proxy-Authorization": "Basic " + authData,
}
return chromedp.Tasks{
network.Enable(),
network.SetExtraHTTPHeaders(headers),
}
}
... 申请:
if err := chromedp.Run(c.ctx,
c.setHeaders(),
chromedp.Navigate(c.NavigationUrl),
chromedp.Reload(),
); err != nil {
log.Println("error# ", err)
return c
}