Node.js Express:当用户直接搜索.html文件时处理请求

时间:2019-05-27 17:15:41

标签: node.js express server

我无法处理用户请求HTML文件URL的请求。例如,如果用户搜索localhost:8080 / profile-如果他们未登录,它将把他们重定向到登录页面,但是,如果他们搜索localost:8080 / profile.html,它将始终将他们带到profile.html。 。 我本质上希望能够在直接搜索HTML文件时处理请求。 当我尝试通过以下方式使用express时:

app.get("/profile", function(req, res) {
    // Handle req here
}

app.get("/profile.html", function(req, res) {
    // Handle req here
}

当用户搜索/profile.html时,这两个都不被调用。

所有html页面都存储在/ public /中,下面是与快递服务器的设置有关的代码。

let express = require("express");
let https = require("https");
let path = require("path");
const bodyParser = require('body-parser');

let fs2 = require("fs");
let httpsOptions = {
    cert : fs2.readFileSync(path.join(__dirname, 'SSL', 'server.cert')),
    key : fs2.readFileSync(path.join(__dirname, 'SSL', 'server.key'))
}

let port = 3443;
let root = "./public"

let server = express();
server.use(bodyParser.json());
server.use(session({secret:"qwertyuiop", resave:false, saveUninitialized:true}));
var staticPath = path.join(__dirname, '/public');
server.use(express.static(staticPath));

start();

async function start() {
    try {
        https.createServer(httpsOptions, server).listen(port, function() {
            console.log('[SERVER] STATUS: Express HTTPS server on listening on port 3443');
        });

    }
    catch (err) { console.log(err); process.exit(1); }
}

0 个答案:

没有答案