📜  Node.js tlsSocket.getPeerFinished() 方法(1)

📅  最后修改于: 2023-12-03 15:03:14.376000             🧑  作者: Mango

Node.js tlsSocket.getPeerFinished() 方法

简介

tlsSocket.getPeerFinished() 方法用于返回一个布尔值,表示TLS连接的peer是否已经完成了握手过程中的证书交互。当在TLS连接上调用此方法时,如果交互已经完成,则返回true,否则返回false。

该方法是TLS连接对象(由tls.connect()tls.TLSSocket()创建的对象)的方法之一。

语法
tlsSocket.getPeerFinished()
返回值

该方法会返回一个布尔值,表示peer是否已经完成了证书交互。如果返回true,则表示已经完成,反之则表示还未完成。

示例

以下示例展示了tlsSocket.getPeerFinished()方法的基本用法:

const tls = require('tls');

const options = {
  // TLS连接选项
  host: 'example.com',
  port: 443
};

const socket = tls.connect(options, function() {
  console.log('TLS连接已经建立');

  // 获取peer是否已经完成握手过程中的证书交互
  console.log(`Peer已经完成握手:${socket.getPeerFinished()}`);
});

socket.on('error', function(error) {
  console.error(error);
});

在此示例中,我们创建了一个TLS连接并在连接建立后使用getPeerFinished()方法获取peer是否已经完成证书交互的状态。如果输出日志为true,则表示peer已经完成了证书交互,否则表示还未完成。

注意事项
  • getPeerFinished()方法只能在TLS连接对象上使用,而不能在其他对象上使用。
  • 在TLS连接建立后,可能需要一些时间才能完成证书交互。在此期间,getPeerFinished()方法始终返回false。
  • getPeerFinished()方法与secureEstablished事件配合使用时,可以确定TLS连接是否已经完成。secureEstablished事件在TLS连接完成时触发。
  • tlsSocket.authorized属性可以用来表示证书验证是否成功。如果为true,则表示验证成功。