在 Express 中新增 404 頁面


現在我們有用於處理路由的 App.js 和 route.js。對於我們尚未新增任何請求處理的任何其他 HTTP 請求都會導致錯誤頁面。例如,URL ‘test’−

App.js

const http = require('http');

const express = require('express');
const bodyParser = require('body-parser');
const route = require('./routes');

const app = express();

app.use(bodyParser.urlencoded({extended: false}));
app.use(route);

const server = http.createServer(app);

server.listen(3000);

在不正確的 URL 上顯示有意義的錯誤資訊−

我們可以在 App.js 中所有中介軟體的末尾為不正確的 URL 新增一個全捕獲中介軟體−

const http = require('http');

const express = require('express');
const bodyParser = require('body-parser');
const route = require('./routes');

const app = express();

app.use(bodyParser.urlencoded({extended: false}));
app.use(route);

app.use((req, res,next)= >{
   res.send('<h1> Page not found </h1>');
});
const server = http.createServer(app);

server.listen(3000);

最後一箇中間件是如果找不到請求處理程式和返回響應時的請求處理程式。在此全捕獲中介軟體中,我們可以傳送不正確路徑的訊息。

現在,對於任何不正確的路徑,我們都會在瀏覽器上看到以下輸出−

我們可以從 express 中使用單獨的路由器,並按其他路由器的順序將其最後新增。

傳送 404 狀態程式碼−

app.use((req, res,next)=>{
   res.status(404).send('<h1> Page not found </h1>');
});

在傳送實際訊息之前,我們可以在響應中連結 setHeader 等其他功能。

res.setHeader(‘’).send(‘’);

更新於:2020 年 5 月 13 日

893 次觀看

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.