請求重定向和請求轉發的區別
重定向和轉發都可以讓瀏覽器獲得另外一個URL所指向的資源,但兩者的內部執行機制有著很大的區別。
1) 轉發只能將請求轉發給同一個Web應用中的元件;而重定向不僅可以重定向到當前應用程式的其他資源,還可以重定向到同一個站點的其他應用程式中的資源,甚至可以通過使用絕對URL重定向到其他站點的資源。
2) 重定向重定向的訪問結束後,瀏覽器位址列中顯示的URL會發生改變,由初始的URL地址變成重定向的目標URL;而呼叫重定向方法的請求轉發過程結束後,瀏覽器位址列保持初始的URL地址不變。
3) 重定向對瀏覽器的請求直接做出響應,響應結果就是告訴瀏覽器去重新發出對另外一個URL的訪問請求。
轉發是在伺服器端內部將請求轉發給另外一個資源,瀏覽器只知道發出了請求並得到了響應結果,並不知道在伺服器內部發生了轉發行為。
4) 轉發的呼叫者和被呼叫者之間共享相同的request物件和response物件,它們屬於同一個訪問請求和響應過程。而重定向的呼叫者和被呼叫者使用各自的request和response物件,他們屬於兩個獨立的訪問請求和響應過程。
5) 無論是重定向方法還是轉發方法,在呼叫它們之前,都不能有內容已經被實際輸出到了客戶端。如果緩衝區中已經有了一些內容,這些內容將被從緩衝區中清楚。
相關文章
- 重定向和請求轉發的區別
- HTTP中的重定向和請求轉發的區別HTTP
- Servlet中請求重定向和請求轉發和includeServlet
- 請求轉發與URL重定向
- javaWeb03-請求轉發和請求重定向【包含編碼格式與路徑問題】JavaWeb
- get請求和post請求的區別
- get和post請求的區別(面試)面試
- 20160326 javaweb 請求轉發和請求包含JavaWeb
- AJAX的POST和GET請求的區別
- http請求之get和post的區別HTTP
- JAVA中Get和Post請求的區別Java
- jmeter學習指南之HTTP請求中自動重定向和跟隨重定向的區別JMeterHTTP
- get與post的請求區別
- POST與GET請求區別
- get請求和post請求區別詳解
- http請求中get和post方法的區別HTTP
- HTTP協議GET和POST請求的區別HTTP協議
- 如何根據介面請求型別和請求方法,自動執行對應請求型別
- iOS 同步請求 非同步請求 GET請求 POST請求iOS非同步
- 【轉】怎麼用PHP傳送HTTP請求(POST請求、GET請求)?PHPHTTP
- GET和POST兩種基本請求方法的區別
- HTTP請求中 request payload 和 formData 區別?HTTPORM
- SAP BASIS 工作臺請求和定製請求的區別
- ajax 請求的時候 get 和 post 方式的區別?
- jQuery的AJAX請求中contentType和dataType的區別jQuery
- 配置IHS轉發請求到WAS
- POSTMAN HTTP請求的四種方式區別PostmanHTTP
- SpringMVC中如何傳送GET請求、POST請求、PUT請求、DELETE請求。SpringMVCdelete
- 淺談HTTP中GET和POST請求方式的區別HTTP
- 請求框架&移動請求框架
- 請求OpenFeign的GET請求時,請求為何失敗?
- 有趣的請求引數/請求頭
- 奇妙的 sys 請求(轉)
- Android Http請求框架一:Get 和 Post 請求AndroidHTTP框架
- 詳解nginx的請求限制(連線限制和請求限制)Nginx
- centos上nginx轉發tcp請求CentOSNginxTCP
- 原始碼分析Gateway請求轉發原始碼Gateway
- 原聲ajax與jquery ajax請求的區別jQuery