淺談一下forward和redirect的區(qū)別
1.forward 和redirect
forward又叫轉(zhuǎn)發(fā),表示轉(zhuǎn)發(fā),當請求來到時,可以將請求轉(zhuǎn)發(fā)到其他的指定服務,用戶端不知曉。

redirect又叫重定向,表示轉(zhuǎn)發(fā),當請求發(fā)給A服務時,服務A返回重定向給客戶端,客戶端再去請求B服務。

2.使用forward注意事項
1.轉(zhuǎn)發(fā)和被轉(zhuǎn)發(fā)的請求類型必須一致,即全是GET或者POST
2.轉(zhuǎn)發(fā)者方法不能被標識位@RestController或者@ResponseBody
3.使用redirect注意事項
1.redirect不支持post請求
2.redirect需要攜帶請求參數(shù),需要在url地址中進行編碼防止中文亂碼。
4.兩者的區(qū)別
1.從地址欄顯示來說:
?forword是服務器內(nèi)部的重定向,服務器直接訪問目標地址的 url網(wǎng)址,把里面的東西讀取出來,但是客戶端 并不知道,因此用forward的話,客戶端瀏覽器的網(wǎng)址是不會發(fā)生變化的。
?redirect是服務器根據(jù)邏輯,發(fā)送一個狀態(tài)碼,告訴瀏覽器重新去請求那個地址,所以地址欄顯示的是新的地址。
2.從數(shù)據(jù)共享來說:
?由于在整個定向的過程中用的是同一個request,因此forward會將request的信息帶到被重定向的jsp或者 servlet中使用。即可以共享數(shù)據(jù)
?redirect不能共享
3.從運用的地方來說
?forword 一般用于用戶登錄的時候,根據(jù)角色轉(zhuǎn)發(fā)到相應的模塊
?redirect一般用于用戶注銷登錄時返回主頁面或者跳轉(zhuǎn)到 其他網(wǎng)站
4.從效率來說:
?forword效率高,而redirect效率低
5.從本質(zhì)來說:
?forword轉(zhuǎn)發(fā)是服務器上的行為,而redirect重定向是客戶端的行為
6.從請求的次數(shù)來說:
?forword只有一次請求;而redirect有兩次請求
到此這篇關于淺談一下forward和redirect的區(qū)別的文章就介紹到這了,更多相關forward和redirect的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
腳本中出現(xiàn) window.open() access is denied - 拒絕訪問 情況一則及分析
腳本中出現(xiàn) window.open() access is denied - 拒絕訪問 情況一則及分析...2007-01-01
document.styleSheets[0].disabled
document.styleSheets[0].disabled...2006-10-10
JavaScript中Function()函數(shù)的使用教程
這篇文章主要介紹了JavaScipt中Function()函數(shù)的使用教程,是JavaScipt入門學習中的基礎知識,需要的朋友可以參考下2015-06-06
詳解JavaScript實現(xiàn)設計模式中的適配器模式的方法
適配器模式可以根據(jù)需求轉(zhuǎn)換(或調(diào)整)一個接口,創(chuàng)建含有您所需接口的另一個對象,并將它連接到您想改變接口的對象,從而完成這種轉(zhuǎn)換,下面就來詳解JavaScript實現(xiàn)設計模式中的適配器模式的方法2016-05-05
詳解JavaScript中的數(shù)據(jù)類型,以及檢測數(shù)據(jù)類型的方法
這篇文章主要介紹了JavaScript中的數(shù)據(jù)類型,以及檢測數(shù)據(jù)類型的方法,幫助大家鞏固基礎知識,感興趣的朋友可以了解下2020-09-09

