1、請求方不同:redirect是由客戶端發起的請求,而forward是服務端發起的請求。
2、瀏覽器地址表現不同:redirect是瀏覽器地址顯示被請求的url,而forward是瀏覽器地址不顯示被請求的url。
3、參數傳遞不同:redirect需要重新開始一個request,原頁面的request生命周期結束。forward另一個連接的時候。request變量是在其生命周期內的。另一個頁面也可以使用,其實質是把目標地址include。
4、底層運作不同:redirect發送的請求信息又回送給客戶機,讓客戶機再轉發到另一個資源上,需要在服務器和客戶機之間增加一次通信。forward服務器端直接找到目標,並include過來。
5、定義不同:Forward——客戶端和瀏覽器隻發出一次請求,Servlet、JSP或其它信息資源,由第二個信息資源響應該請求,在請求對象request中,保存的對象對於每個信息資源是共享的。Redirect——實際是兩次HTTP請求,服務器端在響應第一次請求的時候,讓瀏覽器再向另外一個URL發出請求,從而達到轉發的目的。
以上就是小編給大傢介紹瞭forward和redirect的區別,相信大傢對此有瞭一定的瞭解,希望能幫到大傢。