1. 程式人生 > >004_Http之response響應頭-01重定向

004_Http之response響應頭-01重定向

什麼是重定向?

// 響應重定向 【response.sendRedirect】

// 請求轉發和請求包含【request.include】

瀏覽器請求第一個Servlet1,Servlet1返回一個響應,給個地址到瀏覽器。然後瀏覽器再次傳送請求到第二個Servlet2,Servlet2返回一個響應。

因此,會產生2個請求,2個響應。

瀏覽器的地址會發生變化,有servlet1到servlet2.

//重定向:
// 1. 設定Location的值【Location:重定向關鍵字】
//  2. 傳送302狀態碼

response.setHeader("Location", "/day10_1/CServlet");  / /   專案名+Servlet的url-pattern名
response.setStatus(302);

為什麼是專案名+Servlet的url-pattern名?

注:第一個Servlet1,將響應傳送到瀏覽器,瀏覽器再次發出請求,但是瀏覽器不知道是哪個專案,所以就必須加上請求的專案名,及servlet的url-pattern。


重定向的快捷方法

sendRedirect(String location):location:就是URI=專案名稱+Servlet的url-pattern

eg:

response.sendRedirect("/day10_1/CServlet");