私は自分のnodeJSサーバーに対してhttps要求を有効にしています。しかし、私は、その8080ポートを持つHTTP要求から、その443ポートを持つhttpsに受信できるのと同じルートを使用したいと思います。ExpressからHTTPSへのルートの使用方法は?
http://api.myapp.com:8080/api/waitlist/joinはhttps://api.myapp.com:443/api/waitlist/join 成功したが、私はHttpsServerをのための「アプリ」のと同じルートを使用するコードで欠場かどう ではないでしょうか?
var fs = require('fs');
var https = require('https');
var express = require('express'); // call express
var app = express(); // define our app using express
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var cors = require('cors');
var config = require('./config');
// Configure app to use bodyParser()
[...]
// Configure the CORS rights
app.use(cors());
// Enable https
var privateKey = fs.readFileSync('key.pem', 'utf8');
var certificate = fs.readFileSync('cert.pem', 'utf8');
var credentials = {
key: privateKey,
cert: certificate
};
var httpsServer = https.createServer(credentials, app);
// Configure app port
var port = process.env.PORT || config.app.port; // 8080
// Configure database connection
[...]
// ROUTES FOR OUR API
// =============================================================================
// Create our router
var router = express.Router();
// Middleware to use for all requests
router.use(function(req, res, next) {
// do logging
console.log('>>>> Something is happening. Here is the path: '+req.path);
next();
});
// WAITLIST ROUTES ---------------------------------------
// (POST) Create Email Account --> Join the waitList
router.route('/waitlist/join').post(waitlistCtrl.joinWaitlist);
// And a lot of routes...
// REGISTER OUR ROUTES -------------------------------
// All of our routes will be prefixed with /api
app.use('/api', router);
// START THE SERVER
// =============================================================================
app.listen(port);
httpsServer.listen(443);
ありがとうございます!
うまく動きましたどうもありがとう – Sinequanon