當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js tls.Server 'resumeSession'事件用法及代碼示例


事件:'resumeSession'

添加於:v0.9.2

當客戶端請求恢複之前的 TLS 會話時,會發出 'resumeSession' 事件。偵聽器回調在調用時傳遞了兩個參數:

  • sessionId <Buffer> TLS 會話標識符
  • callback <Function>恢複前一個會話時要調用的回調函數:callback([err[, sessionData]])

事件偵聽器應使用給定的 sessionId 在外部存儲中查找由 'newSession' 事件處理程序保存的 sessionData。如果找到,請調用 callback(null, sessionData) 以恢複會話。如果未找到,則無法恢複會話。 callback() 必須在沒有sessionData 的情況下調用,以便握手可以繼續並可以創建新會話。可以調用callback(err) 來終止傳入連接並銷毀套接字。

偵聽此事件隻會對添加事件偵聽器後建立的連接產生影響。

下麵說明了恢複 TLS 會話:

const tlsSessionStore = {};
server.on('newSession', (id, data, cb) => {
  tlsSessionStore[id.toString('hex')] = data;
  cb();
});
server.on('resumeSession', (id, cb) => {
  cb(null, tlsSessionStore[id.toString('hex')] || null);
});

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品  'resumeSession'事件。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。