我正在使用NodeJS和SocketIO创建一个应用程序,并希望添加HTTPS支持。目前,我的应用程序与http。
按预期工作var http = require('http');
var socketIO = require('socket.io');
var fileServer = new(nodeStatic.Server)();
var server = http.createServer(function(req, res) {
fileServer.serve(req, res);
}).listen(8080);
var io = socketIO.listen(server);
io.sockets.on('connection', function(socket) {
...
这对我来说非常有用。我尝试使用以下内容添加HTTPS支持:
var https = require('https');
var fs = require('fs');
var socketIO = require('socket.io');
var options = {
key: fs.readFileSync('key.pem'),
cert: fs.readFileSync('cert.pem')
};
var fileServer = new(nodeStatic.Server)();
var server = https.createServer(options, function(req, res) {
fileServer.serve(req, res);
}).listen(8080);
var io = socketIO.listen(server);
io.sockets.on('connection', function(socket) {
...
以下代码引发错误Failed to load resource: net::ERR_EMPTY_RESPONSE
和Uncaught ReferenceError: io is not defined
。
我真的很感激任何建议,我还在学习NodeJS和SocketIO。谢谢!