Electron-检测ssl证书错误,并以编程方式忽略每个域/白名单的错误



在Chrome中,如果您打开一个证书过期/不正确的https页面,将显示一条警告,但用户仍然可以覆盖它,并在会话期间将该页面列入白名单。

在Electron应用程序中,使用不正确的证书访问https页面将导致一个没有警告的空白页面。

有没有办法:

  1. 当页面因SSL不正确而被拒绝加载时进行检测(处理所有角落情况、所有类型的SSL错误等(
  2. 以编程方式将域列入白名单(在会话期间或根本不列入(,以忽略安全警告并允许加载页面

这里有一个certificate-error回调,可以用来将逻辑添加到某些域的白名单中

const { app } = require('electron')
app.on('certificate-error', (event, webContents, url, error, certificate, callback) => {
if (url === 'https://github.com') {
// Verification logic.
event.preventDefault()
callback(true)
} else {
callback(false)
}
})

此处提供文档https://www.electronjs.org/docs/api/app#event-证书错误

最新更新