1. 程式人生 > >jsp學習之——關於請求轉發和重定向的形象理解

jsp學習之——關於請求轉發和重定向的形象理解

本質 url 博文 客戶端 style 讓我 esp 方法 rect

1.重定向:是屬於客戶端行為,實現方法:response.sendRedirect() 從本質上講等同於兩次請求,前一次的請求對象不會保留,在瀏覽器上的直觀表現是——地址欄的URL地址會改變。

2.請求轉發:是屬於服務器行為,實現方法:request.getRequsetDispatcher().forward(requset,response) 是一次請求,轉發後請求對象會保存,瀏覽器上的直觀表現就是——地址欄的URL地址不會改變。(服務器內部轉發,所以客戶端看不到地址欄的改變)


下面舉個生活中的實例來說明(其他博文看到的一個例子):

重定向: 就好比我們(瀏覽器)找一個A廣告公司給設計名片,A明確告訴我們他們不會設計,就讓我們找B公司,結果B公司 給我設計好了,所以我們會對外

宣稱是B公司給我們設計的名片,(所以我們就相當於發送了兩次次請求,URL地址 欄裏就從A變成了B公司)

請求轉發: 同樣去找A公司給設計名片,A公司雖然不能設計但是他們接下了我們的活,把這項任務外包(轉發)給B公司,最 終我們會把錢給A公司,也就會對外宣稱是A公司給我們設計的名片這就是請求重定向(所以我們就相當於只對A發 送了一次請求,URL地址欄裏依然是A公司)。

jsp學習之——關於請求轉發和重定向的形象理解