Tôi đang cố gắng để socket.io chạy với chứng chỉ SSL của tôi, tuy nhiên, nó sẽ không kết nối.
Tôi dựa vào mã của mình từ ví dụ trò chuyện:
var https = require('https');
var fs = require('fs');
/**
* Bootstrap app.
*/
var sys = require('sys')
require.paths.unshift(__dirname + '/../../lib/');
/**
* Module dependencies.
*/
var express = require('express')
, stylus = require('stylus')
, nib = require('nib')
, sio = require('socket.io');
/**
* App.
*/
var privateKey = fs.readFileSync('../key').toString();
var certificate = fs.readFileSync('../crt').toString();
var ca = fs.readFileSync('../intermediate.crt').toString();
var app = express.createServer({key:privateKey,cert:certificate,ca:ca });
/**
* App configuration.
*/
...
/**
* App routes.
*/
app.get('/', function (req, res) {
res.render('index', { layout: false });
});
/**
* App listen.
*/
app.listen(443, function () {
var addr = app.address();
console.log(' app listening on http://' + addr.address + ':' + addr.port);
});
/**
* Socket.IO server (single process only)
*/
var io = sio.listen(app,{key:privateKey,cert:certificate,ca:ca});
...
Nếu tôi xóa mã SSL, nó sẽ chạy tốt, tuy nhiên với nó, tôi nhận được yêu cầu http://domain.com/socket.io/1/?t=1309967919512
Lưu ý rằng nó không thử https, điều này khiến nó bị lỗi.
Tôi đang thử nghiệm trên chrome, vì đây là trình duyệt mục tiêu cho ứng dụng này.
Tôi xin lỗi nếu đây là một câu hỏi đơn giản, tôi là một newbie nút / socket.io.
Cảm ơn!