我遇到过这样一种情况:对于通过 XHR 或 FETCH 请求发起的资源请求,不会触发“OnCertificateError”事件。我的问题是 - OnCertificateError 是仅针对主机请求触发还是支持针对所有 SSL/TLS 错误触发?
我还尝试添加 Cef 命令行参数来启用错误,以便我可以在“OnCertificateError”事件下捕获它们,但它不起作用。
支持针对所有 SSL/TLS 错误触发?
不。您所看到的是预期的行为。子资源请求在不调用
OnCertificateError
的情况下就会被阻止。如果您查看 CEF 源代码,您将看到以下内容
if (!is_main_frame_request) {
// A sub-resource has a certificate error. The user doesn't really
// have a context for making the right decision, so block the request
// hard.
std::move(callback).Run(content::CERTIFICATE_REQUEST_RESULT_TYPE_DENY);
return base::NullCallback();
}