Node.js 带有nodejs和connect的HTTPS

Node.js 带有nodejs和connect的HTTPS,node.js,https,connect,Node.js,Https,Connect,我目前正在使用nodejs和connect作为我的HTTP服务器。是否仍然可以使用connect激活HTTPS?我找不到关于它的任何文件。谢谢 亨利来自 HTTP和HTTPS 以前从节点的核心net.Server继承的connect.Server 使您的应用程序很难同时提供HTTP和HTTPS。 connect()的结果(以前是connect.createServer())现在是 只是一个JavaScript函数。这意味着您可以省略对的调用 app.listen(),只需将app传递给节点net

我目前正在使用nodejs和connect作为我的HTTP服务器。是否仍然可以使用connect激活HTTPS?我找不到关于它的任何文件。谢谢

亨利

来自

HTTP和HTTPS

以前从节点的核心net.Server继承的connect.Server 使您的应用程序很难同时提供HTTP和HTTPS。 connect()的结果(以前是connect.createServer())现在是 只是一个JavaScript函数。这意味着您可以省略对的调用 app.listen(),只需将app传递给节点net.Server,如下所示:

var connect = require('connect')
  , http = require('http')
  , https = require('https');

var app = connect()
  .use(connect.logger('dev'))
  .use(connect.static('public'))
  .use(function(req, res){
    res.end('hello world\n');
  })

http.createServer(app).listen(80);
https.createServer(tlsOptions, app).listen(443);

express 3.0也是如此,因为它继承了connect 2.0,而不是创建
http
服务器,使用
https
服务器进行连接:

var fs = require('fs');
var connect = require('connect')
  //, http = require('http'); Use https server instead
  , https = require('https');

var options = {
    key:    fs.readFileSync('ssl/server.key'),
    cert:   fs.readFileSync('ssl/server.crt'),
    ca:     fs.readFileSync('ssl/ca.crt')
};
var app = connect();
https.createServer(options,app).listen(3000);

请参阅
https
tls
服务器的文档(https是tls的一个子类)

。查看Connect 2.0上的这篇博文。谢谢你的帮助。