Koa.js - Chuyển hướng

Chuyển hướng là rất quan trọng khi tạo trang web. Nếu một URL không đúng định dạng được yêu cầu hoặc có một số lỗi trên máy chủ của bạn, bạn nên chuyển hướng chúng đến các trang lỗi tương ứng. Chuyển hướng cũng có thể được sử dụng để ngăn mọi người ra khỏi các khu vực hạn chế trên trang web của bạn.

Hãy để chúng tôi tạo một trang lỗi và chuyển hướng đến trang đó bất cứ khi nào ai đó yêu cầu một URL không đúng định dạng.

var koa = require('koa');
var router = require('koa-router');
var app = koa();
var _ = router();

_.get('/not_found', printErrorMessage);
_.get('/hello', printHelloMessage);

app.use(_.routes());
app.use(handle404Errors);

function *printErrorMessage() {
   this.status = 404;
   this.body = "Sorry we do not have this resource.";
}
function *printHelloMessage() {
   this.status = 200;
   this.body = "Hey there!";
}
function *handle404Errors(next) {
   if (404 != this.status) return;
   this.redirect('/not_found');
}
app.listen(3000);

Khi chúng tôi chạy mã này và điều hướng đến bất kỳ tuyến đường nào khác ngoài / hello, chúng tôi sẽ được chuyển hướng đến / not_found. Chúng tôi đã đặt phần mềm trung gian ở cuối (lệnh gọi hàm app.use đến phần mềm trung gian này). Điều này đảm bảo cuối cùng chúng tôi tiếp cận được phần mềm trung gian và gửi phản hồi tương ứng. Sau đây là kết quả chúng ta thấy khi chạy đoạn mã trên.

Khi chúng tôi điều hướng đến https://localhost:3000/hello, chúng tôi nhận được -

Nếu chúng tôi điều hướng đến bất kỳ tuyến đường nào khác, chúng tôi sẽ -