Dart使用HTTP服務器如何完成404重定向?未找到Dart httpServer 404頁面
僞代碼:
server.addRequestHandler(NOTFOUND,redirectTo(...));
在此先感謝。
Dart使用HTTP服務器如何完成404重定向?未找到Dart httpServer 404頁面
僞代碼:
server.addRequestHandler(NOTFOUND,redirectTo(...));
在此先感謝。
如果你想要做一個URL redirection,您可以使用:
Refresh
頭:server.addRequestHandler(notFound, (HttpRequest request, HttpResponse response) {
response.statusCode = HttpStatus.NOT_FOUND;
response.headers.set("Refresh", "0; url=http://www.example.com/");
response.outputStream.close();
});
server.addRequestHandler(notFound, (HttpRequest request, HttpResponse response) {
response.statusCode = HttpStatus.NOT_FOUND;
response.headers.set(HttpHeaders.CONTENT_TYPE, 'text/html');
response.outputStream.writeString(
'<!DOCTYPE html>'
'<meta http-equiv="Refresh" content="5; url=\'http://example.com/\'">'
'Page requested cannot be found. You will be redirected in few seconds...'
);
response.outputStream.close();
});
另一種方法是使用le位置標題: response.headers.set(「location」,url); –
不幸的是,帶有'404'狀態和'location'頭的重定向似乎不起作用。這就是爲什麼我沒有提到這個標題。 –
我認爲問題是「如果我的服務器有一個404,我該如何重定向到一個新的頁面」?所以這有兩個部分......如何捕捉404(也許他是從靜態文件中詢問404),然後如何重定向。不過,他並未指定程序如何知道如何從A重定向到B. –
404 == *未找到*。 *重定向*是什麼意思? –
我想他意味着404頁面應該只是重定向到網站的另一個頁面,可能會延遲。 – PhiLho
塞思拉德有一個很好的起點:http://stackoverflow.com/questions/13081740/how-do-i-serve-static-files-from-a-different-url-with-dart –