1.重定向
(1) 什么是重定向?
服務器通知瀏覽器立即訪問一個新的地址
注:服務器可以通過發送302狀態碼和location消息頭(該消息頭的值是一個地址,一般稱之為重定向地址),瀏覽器收到之后,會立即向重定向地址發送請求
(2) 如何重定向
response.sendRedirect(String url);
'注:url就是重定向地址。
'重定向之前,容器會先清空response對象上存放的所有數據。也就是說響應數據包消息正文為空。
(3) 特點
a.重定向地址是任意的
b.重定向之后,瀏覽器地址欄的地址會發生變化。
官方給的說法中301與302是這樣定義的:
- 301 redirect:
301
代表永久性轉移(Permanently Moved)。 - 302 redirect:
302
代表暫時性轉移(Temporarily Moved )。
對於用戶:301與
302 對用戶來說沒有區別,他們看到效果只是跳轉,即瀏覽器中舊的URL變成了新的URL。頁面跳到了這個新的URL所指向的地址。
對於服務端:我們建議使用301狀態碼,特別是搜索引擎類的。因為如果使用了302,就可能發生網址篡改;當網頁HTML301使用301狀態碼重定向到網頁HTML302時,搜索引擎可以確認網頁HTML301永久的重定向到location中的位置,或者說原地址實際上已經不存在了,搜索引擎就會把將HTML302當作唯一有效目標。這樣搜索引擎會把HTML301后的頁面作為目標location。