badCertificateCallback 属性
设置一个回调函数,用于决定是否接受一个服务器证书,该服务器证书无法通过我们的任何受信任根证书进行身份验证的安全连接。
当使用此 HttpClient 发送一个安全 HTTP 请求,且服务器返回一个无法通过我们的任何受信任根证书进行身份验证的服务器证书时,该回调异步调用将带有 X509Certificate 对象以及服务器的主机名和端口的参数。如果 badCertificateCallback 的值为 null
,则拒绝无效证书,如同回调返回了 false
。
如果回调返回 true,则接受安全连接,并且从调用请求返回的 Future<HttpClientRequest>
完成时带有有效的 HttpRequest 对象。如果回调返回 false,则 Future<HttpClientRequest>
完成时会抛出异常。
如果在连接尝试中接收到无效证书,库会在请求时调用当时 badCertificateCallback 的值所对应的函数,即使自那时起 badCertificateCallback 的值已更改。
实现
void set badCertificateCallback(
bool Function(X509Certificate cert, String host, int port)? callback);