Redirecting http to https
Signed-off-by: Walamana <joniogerg@gmail.com>
This commit is contained in:
82
node_modules/express-force-ssl/test/server/index.js
generated
vendored
Normal file
82
node_modules/express-force-ssl/test/server/index.js
generated
vendored
Normal file
@@ -0,0 +1,82 @@
|
||||
var bodyParser = require('body-parser')
|
||||
, express = require('express')
|
||||
, forceSSL = require('../../index')
|
||||
, fs = require('fs')
|
||||
, http = require('http')
|
||||
, https = require('https')
|
||||
;
|
||||
|
||||
module.exports = function (options) {
|
||||
var ssl_options = {
|
||||
key: fs.readFileSync('./test/keys/localhost.key'),
|
||||
cert: fs.readFileSync('./test/keys/localhost.crt')
|
||||
};
|
||||
|
||||
options = options || {};
|
||||
|
||||
var httpPort = options.httpPort || 8080;
|
||||
var httpsPort = options.httpsPort || 8443;
|
||||
|
||||
delete options.httpPort;
|
||||
|
||||
var app = express();
|
||||
|
||||
/*
|
||||
Allow for testing with POSTing of data
|
||||
*/
|
||||
app.use(bodyParser.urlencoded({ extended: false }));
|
||||
app.use(bodyParser.json());
|
||||
|
||||
var server = http.createServer(app);
|
||||
var secureServer = https.createServer(ssl_options, app);
|
||||
|
||||
/*
|
||||
Routes
|
||||
*/
|
||||
app.get('/', function (req, res) {
|
||||
res.send('HTTP and HTTPS.');
|
||||
});
|
||||
|
||||
app.get('/ssl', forceSSL, function (req, res) {
|
||||
res.send('HTTPS only.');
|
||||
});
|
||||
|
||||
app.get('/ssl/nested/route/:id', forceSSL, function (req, res) {
|
||||
var host = req.headers.host.split(':');
|
||||
var port = host.length > 1 ? host[1] : 'default port';
|
||||
res.send('HTTPS Only. Port: ' + port + '. Got param of ' + req.params.id + '.');
|
||||
});
|
||||
|
||||
app.post('/echo', function (req, res) {
|
||||
res.json(req.body);
|
||||
});
|
||||
|
||||
app.post('/sslEcho', forceSSL, function (req, res) {
|
||||
res.json(req.body);
|
||||
});
|
||||
|
||||
app.get('/override', function (req, res, next) {
|
||||
res.locals.forceSSLOptions = {
|
||||
enable301Redirects: false
|
||||
};
|
||||
next();
|
||||
}, forceSSL, function (req, res) {
|
||||
res.json(req.body);
|
||||
});
|
||||
|
||||
//Old Usage
|
||||
//app.set('httpsPort', httpsPort);
|
||||
app.set('forceSSLOptions', options);
|
||||
secureServer.listen(httpsPort);
|
||||
server.listen(httpPort);
|
||||
|
||||
return {
|
||||
secureServer: secureServer,
|
||||
server: server,
|
||||
app: app,
|
||||
securePort: httpsPort,
|
||||
port: httpPort,
|
||||
options: options
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user