2016-03-19 61 views
1

如何將此快速服務器轉換爲使用https?nodejs使用護照認證表示應用程序需要使用https

var express = require('express'); 
var router = express.Router(); 

var isAuthenticated = function (req, res, next) { 
    if (req.isAuthenticated()) 
     return next(); 
    res.redirect('/'); 
} 

module.exports = function(passport) { 

    /* GET login page. */ 
    router.get('/', function(req, res) { 
     // Display the Login page with any flash message, if any 
     res.render('index', { message: req.flash('message') }); 
    }); 

    /* GET Registration Page */ 
    router.get('/signup', function(req, res){ 
     res.render('register',{message: req.flash('message')}); 
    }); 

    return router; 
} 
+1

這是沒有問題的有趣的部分。有趣的部分是你做應用程序的'listen'調用的行。您必須使用HTTPS啓動它。您的代碼僅顯示路由。 – migg

回答

2

在分鐘你可能有一些看起來像這樣:

app.listen(3000); 

app.listen基本上是爲http.createServer(app).listen(3000)的別名。 注意:這可能在./bin/www(如果您使用快遞發電機)。

如果你想擁有你需要用下面的更換app.listenhttp.createServer()僅HTTPS服務器:

var https = require('https'); 
var fs = require('fs'); 

// ... Express app 

var options = { 
    key: fs.readFileSync('your/own/key.pem'), 
    cert: fs.readFileSync('your/own/cert.pem') 
}; 

https.createServer(options, app).listen(8000); 
+0

謝謝阿什利,你指着我正確的文件來更新:) –

相關問題