如何处理选择证书弹窗?
zobx opened this issue · comments
或者怎么默认加载.pfx的证书文件,默认选择确认
这应该是一个 upstream 问题,chromium 不支持这个 api,你可以看看 puppeteer 的一些解决方案,rod 同样适用:
可能有 cli 启动 flag 可以这么干,可能需要开发者自己去查下。
没找到 go 或者 chrome 能导入证书的 api。而且在这个情况中也不能给什么 ignore 或 insecure 之类的 flag。
最后还是用 hijack 解决了问题,关键部分伪代码如下:
client := &http.Client{
Transport: &http.Transport{
TLSClientConfig: ...,
},
}
...
hr := browser.HijackRequests()
hr.Add("*", "", func(h *rod.Hijack) {
err := h.LoadResponse(client, true)
if err != nil {
h.ContinueRequest(&proto.FetchContinueRequest{})
}
})
go hr.Run()
...