重定向與跳轉的區別

重定向:首先服務器受到瀏覽器客戶端請求之後,服務器發送新的鏈接到客戶端瀏覽器,瀏覽器接收到新的鏈接之後又重新請求收到的鏈接地址,在整個過程中完成之後在客戶端瀏覽器看來是發生了一次跳轉,其實是客戶端瀏覽器請求了兩次而已,所以在瀏覽器的地址欄裏網絡地址自然就會改變成新的連接

       轉發:服務器 接收到客戶端的請求之後,服務器把控制權交到另一個JSP頁面手裏,新的JSP頁面接收到請求之後根據情況是繼續轉交控制權或者顯示頁面由自己決定,到最後顯示頁面的整個過程就是一個頁面跳轉過程,在這個過程中,服務器可以把請求的數據在經過的頁面進行傳遞,而不會擔心數據的丟失

下面總結一下兩者的區別:

1.請求的次數的不同,重定向總共請求了兩次服務器;轉發則是用戶請求一次可能經過N個JSP頁面由返回到用戶瀏覽器中,是一次請求多次處理的過程;

2.跳轉過程中鏈接的變化,重定向在跳轉中請求了兩次服務器並且是兩次不同的鏈接地址,在瀏覽器的地址欄可以看到兩次是有變化的;轉發在跳轉過程中瀏覽器請求了一次服務器,服務器經過了n個JSP頁面並沒有改變請求的鏈接地址,因爲用戶只請求了一次,所以在整個跳轉過程中鏈接地址是沒有改變的,在瀏覽器的地址欄就可以看到

3.目的不同,重定向只是簡單的讓用戶訪問一個新的鏈接,而轉發是服務器要得到用戶的請求內容並需要進行一部分處理的,所以兩者目的之不同的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章