我正在使用使用自签名 CA 证书创建的证书运行 https 服务器。
现在我想将 Socket.io 客户端连接到附加到 https 服务器的 Socket.io 服务器。不幸的是,我收到一个错误,告诉我:
Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
at SecurePair.<anonymous> (tls.js:1271:32)
at SecurePair.EventEmitter.emit (events.js:92:17)
at SecurePair.maybeInitFinished (tls.js:883:10)
at CleartextStream.read [as _read] (tls.js:421:15)
at CleartextStream.Readable.read (_stream_readable.js:293:10)
at EncryptedStream.write [as _write] (tls.js:330:25)
at doWrite (_stream_writable.js:211:10)
at writeOrBuffer (_stream_writable.js:201:5)
at EncryptedStream.Writable.write (_stream_writable.js:172:11)
at write (_stream_readable.js:547:24)
at flow (_stream_readable.js:556:7)
基本上,这个错误告诉我证书无法成功验证。这是因为相应的 CA 证书是自签名的。使用 https 请求时,我可以指定我信任的 CA。
在这种情况下如何使 Socket.io 连接?
PS:我正在运行 Node.js 0.10.0 和 Socket.io 0.9.13。