對象SslHandler
ssl 協議轉換處理器
用以將數據流轉換為 ssl流協議。SslHandler 是對SslSocket 的封裝,用於構建服務器,邏輯上相當於:
1
2
3
4
5
6
7var ss = new ssl.Socket(crt, key);
function(s) {
var s1 = ss.accept(s);
hdlr.invoke(s1);
s1.close();
}
繼承關係
構造函數
SslHandler
SslHandler 構造函數,創建一個新的SslHandler 對象
1
2new SslHandler(Array certs,
Handler hdlr);
調用參數:
- certs: Array, 服務器證書列表
- hdlr: Handler, 內置消息處理器,處理函數,鍊式處理數組,路由對象,詳見 mq.Handler
certs 格式為:
1
2
3
4
5
6
7
8
9
10
11[{
name: "fibjs.org",
crt: [X509Cert object],
key: [PKey object]
},
{
name: "*.fibjs.org",
crt: [X509Cert object],
key: [PKey object]
}
]
SslHandler 構造函數,創建一個新的SslHandler 對象
1
2
3new SslHandler(X509Cert crt,
PKey key,
Handler hdlr);
調用參數:
- crt: X509Cert, X509Cert 證書,用於客戶端驗證服務器
- key: PKey, PKey 私鑰,用於與客戶端會話
- hdlr: Handler, 內置消息處理器,處理函數,鍊式處理數組,路由對象,詳見 mq.Handler
成員屬性
verification
Integer, 設定證書驗證模式,缺省為VERIFY_NONE
1Integer SslHandler.verification;
ca
X509Cert, 客戶端證書驗證證書鏈
1readonly X509Cert SslHandler.ca;
handler
Handler, ssl 協議轉換處理器當前事件處理接口對象
1Handler SslHandler.handler;
成員函數
invoke
處理一個消息或對象
1Handler SslHandler.invoke(object v) async;
調用參數:
- v: object, 指定處理的消息或對象
返回結果:
- Handler, 返回下一步的處理器
toString
返回對象的字符串表示,一般返回"[Native Object]",對象可以根據自己的特性重新實現
1String SslHandler.toString();
返回結果:
- String, 返回對象的字符串表示
toJSON
返回對象的JSON 格式表示,一般返回對象定義的可讀屬性集合
1Value SslHandler.toJSON(String key = "");
調用參數:
- key: String, 未使用
返回結果:
- Value, 返回包含可JSON 序列化的值