在指定路徑下傳遞 HTML

以下是如何建立 Express 伺服器並預設提供 index.html(空路徑/)和 page1.html 用於/page1 路徑。

資料夾結構

project root
|    server.js
|____views
     |    index.html
     |    page1.html

server.js

var express = require('express');
var path = require('path');
var app = express();

// deliver index.html if no file is requested
app.get("/", function (request, response) {
  response.sendFile(path.join(__dirname, 'views/index.html'));
});

// deliver page1.html if page1 is requested
app.get('/page1', function(request, response) {
    response.sendFile(path.join(__dirname, 'views', 'page1.html', function(error) {
        if (error) {
            // do something in case of error
            console.log(err);
            response.end(JSON.stringify({error:"page not found"}));
        }
    });
});

app.listen(8080);

請注意,sendFile() 只是將靜態檔案作為響應流式傳輸,因此無法修改它。如果你正在提供 HTML 檔案並希望包含動態資料,那麼你將需要使用模板引擎,如 Pug,Mustache 或 EJS。