[英]Set Home Page in Express
我在節點js中有一些服務器端代碼,它創建了一個快速js對象並運行服務器。 該應用會加載位於公共文件夾內的index.html頁面。 我從未寫過用於服務主頁的代碼(在下面提到),但它仍然有效。
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'public/index.html'));
});
我尚未編寫此代碼,所以如何呈現index.html。 我的理解是,Express JS在代碼中聲明的所有靜態文件夾中查找index.html頁面的第一個實例並將其呈現,在我的情況下,該靜態文件夾為“ publimc”,並且在根目錄下具有index.html。
服務器代碼如下,這是我寫的。
var express = require('express');
var app = express();
var mongojs = require('mongojs');
var db = mongojs('contactlist', ['contactlist']);
var bodyParser = require('body-parser');
app.use(express.static(__dirname + '/publimc'));
app.use(bodyParser.json());
app.get('/contactlist', function (req, res) {
console.log('I received a GET request');
db.contactlist.find(function (err, docs) {
console.log(docs);
res.json(docs);
});
});
app.listen(8000);
console.log("Server running on port 8000");
主頁呈現為express.static
中間件默認選項的一部分 。
要禁用此邏輯,請設置express.static(..., { index: false })
。
如果要更改用作主頁的文件,請設置express.static(..., { index: 'yourfile.html' })
。
實際上,此選項的作用是嘗試為公用文件夾中每個目錄的給定文件名提供一個索引頁,因此,如果您具有public/foo/index.html
則在請求/foo/
路徑時它將得到服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.