Anforderungsumleitung bedeutet, dass eine Webressource, nachdem sie eine Clientanforderung erhalten hat, den Client benachrichtigt, auf eine andere Webressource zuzugreifen. Dies wird als Anforderungsumleitung bezeichnet. Der 302-Statuscode und der Standortheader können zur Implementierung der Umleitung verwendet werden.
Das häufigste Anwendungsszenario für die Anforderungsumleitung ist die Benutzeranmeldung. Der folgende Beispielcode leitet von einer anderen Seite zur Benutzeranmeldeseite weiter:
Kopieren Sie den Codecode wie folgt:
Paket com.yyz.response;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
öffentliche Klasse ResponseDemo erweitert HttpServlet {
public void doGet(HttpServletRequest-Anfrage, HttpServletResponse-Antwort)
wirft ServletException, IOException {
Response.setHeader("location", "/day06/register.html");
Antwort.setStatus(302);
//Die beiden oben genannten Codesätze entsprechen dem folgenden Code:
//response.sendRedirect("/day06/register.html");
}
public void doPost(HttpServletRequest-Anfrage, HttpServletResponse-Antwort)
wirft ServletException, IOException {
doGet(Anfrage,Antwort);
}
}
Es gibt zwei bemerkenswerte Merkmale der Anforderungsumleitung: 1. Es werden zwei Anforderungen an den Server gesendet. 2. Die Adressleiste ändert sich. Da ein wichtiger Grundsatz der Serveroptimierung darin besteht, die Anzahl der gesendeten Anfragen zu reduzieren, sollte die Anfrageumleitung sparsam eingesetzt werden.