システム: Windows 7
NodeJS バージョン: 0.10.2
WS モジュール: ws、最終バージョン
エラー:
events.js:72 スローアー; // 未処理の「エラー」イベント ^ エラー: UNABLE_TO_VERIFY_LEAF_SIGNATURE セキュアペアで。(tls.js:1283:32) SecurePair.EventEmitter.emit (events.js:92:17) で SecurePair.maybeInitFinished で (tls.js:896:10) CleartextStream.read で [_read として] (tls.js:430:15) CleartextStream.Readable.read (_stream_readable.js:294:10) で EncryptedStream.write で [_write として] (tls.js:344:25) doWrite (_stream_writable.js:211:10) で writeOrBuffer (_stream_writable.js:201:5) で EncryptedStream.Writable.write (_stream_writable.js:172:11) で 書き込み時 (_stream_readable.js:547:24)
サーバ:
(function(){
"use strict";
var fs = require('fs');
// you'll probably load configuration from config
var cfg = {
ssl: true,
port: 8080,
ssl_key: 'crt/server1.key',
ssl_cert: 'crt/server1.crt'
};
var httpServ = require('https')
var WebSocketServer = require('ws').Server;
var app = null;
// dummy request processing
var processRequest = function( req, res ) {
res.writeHead(200);
res.end("All glory to WebSockets!\n");
};
if ( cfg.ssl ) {
app = httpServ.createServer({
// providing server with SSL key/cert
key: fs.readFileSync( cfg.ssl_key ),
cert: fs.readFileSync( cfg.ssl_cert ),
//requestCert: true,
//rejectUnauthorized: false
}, processRequest ).listen( cfg.port );
} else {
app = httpServ.createServer( processRequest ).listen( cfg.port );
}
// passing or reference to web server so WS would knew port and SSL capabilities
var wss = new WebSocketServer( { server: app } );
wss.on( 'connection', function ( wsConnect ) {
wsConnect.on( 'message', function ( message ) {
console.log( message );
});
});
}());
クライアント:
var WebSocket = require('ws');
var ws = new WebSocket('wss://localhost:8080');
ws.on('open', function() {
ws.send('something');
});
証明書が確認されました。
助けて>お願いします!