重定向中session是怎樣傳遞的

2022-12-14 09:25:11 字數 3386 閱讀 8427

1樓:

應該是放在request裡面傳遞到後臺,後臺可以在request裡面獲取session。

2樓:

只要視窗不關,session是一直有效的,重定向不影響session

3樓:匿名使用者

伺服器在接收到瀏覽器的第一次請求後,會分配一個session id編號(如果啟用session的話)。以cookie的形式寫回到瀏覽器端。

以後瀏覽器的每次請求,都會攜帶這個叫做「jsessionid」的cookie,裡面的值是一串id號。

伺服器端接受到這個cookie後,解析,然後從記憶體中取出session物件。

所以不管你是重定向還是內部跳轉,實際上都是根據這個《jsessionid》,才能取得session物件

的。根據規範。這個儲存jsessionid的cookie將在使用者關閉瀏覽器時過期失效。

此後的訪問將作為新的請求。分配一個新的sessionid和session物件。之前的session物件將在

伺服器設定的時間段(如伺服器設定30分鐘沒有對應的請求,session將過期)後被**。

在j**a中,jsp重定向,**,cookie,session

4樓:匿名使用者

既然不需要解釋重定向和**的概念 上面的逐條註釋就解釋的很清楚了 要別人解釋也是大同小異

首先對於重定向,** 要了解他們的工作流程 然後對於cookie,session的值

cookie儲存於客戶端 session儲存於伺服器 還有一些概念自己查

重定向是客戶端跳轉,共有二次請求 **是伺服器端跳轉 只有最開始開啟頁面的一次請求

對照上面的概念 自己看看就明白了

第一個是對的 我就不說了

第二個 要記住對cookie的賦值只有等下一次瀏覽請求時才能生效。

第三個 第四個 沒寫入cookie

第五個 第六個 第七個 第八個 瞭解session作用範圍 基本上寫入session的東西 只要不是編譯報錯 都能取得到 一般很少會把值儲存 session裡面

還說個request 作用域更小了 儲存值+然後重定向=獲取不到 以後request 用的多

5樓:匿名使用者

首先要明白這些物件的作用以及聯絡,(第

一、第二種情況解釋):先要知道這些物件是存在**的.其次是瞭解這些物件的作用範圍,先說第一種情況吧.

用重定向就是重新傳送一個請求..你可以用firefox的firebug工具(或者chrome自帶的開發者工具看一下)重定向是向伺服器重新發一個請求.第一cookie是存在於瀏覽器中的,也就是如果你把cookie寫入了你的硬碟,那麼每次當你用該瀏覽器不管訪問那個頁面都會看到你寫到硬碟中的cookie.

而重定向就是再一次發起請求.就是這個請求以外的請求了.因為你的上一個請求的處理把cookie放入到了瀏覽器中.

所以再進行一次請求當然能夠獲取到cookie的值了.

還有第二種情況是請求**.這種情況是不會再一次請求伺服器的.請求**的一次是把你本次的請求交給另一個處理程式處理.

當然,請求的引數還是剛開始你提交的那些引數(並不包括你後來寫到瀏覽器中的cookie的值了)。要理解第

一、第二中情況,就要理解cookie是存在於瀏覽器中的,只要瀏覽器不清除cookie的資訊,只要你訪問任何網頁都會有cookie的值噢..2、就是要理解重定向跟請求**的區別,重定向是在本次請求響應之後又向伺服器傳送了與上次請求毫不相干的請求.而此時cookie已經在瀏覽器中了.

所以就會看到cookie的值了.而請求**雖然在**的時候也把cookie的值寫到了瀏覽器中.但是這次**的請求還是上一次的請求..

引數也全部一樣.所以這次的請求中並不包括cookie的值

(第三、第四種情況解釋)如果進行了重定向或者請求**,那麼就相當於該請求或者又發起的請求已經進入了另一個程式中處理.所以這兩個語句後面的語句都將不會執行了.所以根本沒有寫入cookie

至於第五第六中情況的話,那隻能說我第三第四種情況理解有點錯誤.不過按說這兩個語句後面的應該都不會執行的.

第七第八種情況是因為session是一次會話中設定的值.只要每個瀏覽器對session的處理不一樣,有些瀏覽器就是如果該瀏覽器不關閉,那麼session永遠存在(除非session設定了過期的最長不活動時間)那麼session有可能失效,所以一般如果你把session寫入伺服器,那麼什麼時候訪問都會有值的..

6樓:沒有響應

先說下重定向和**也就是sendredirect 和forward的區別

sendredirect 就是直接跳轉頁面 效果就和你點選一個元素一樣完全沒有別的效果

forward會把request,response當作引數傳遞到下個要開啟的頁面

但是重定向和**在一個頁面裡只能使用其中的一個而且只能使用一次 所以你寫的2 3 4 這些 寫在下邊的重定向和**是不會被執行的

還有就是jsp裡設定cookie必須是在跳轉語句之前設定 之後無效 至於為什麼必須這麼寫...我也不知道書上沒寫 所有看的書上都是先定義好cookie然後在新增到response裡 然後session的使用也是一樣的 書上也都是先設定好session以後才跳轉的 你就按這個來就行了 有時間糾結這個不如去看看別的

重定向之後能共享session嗎

7樓:匿名使用者

可以,forward就可以,redirect不可以

8樓:

為什麼servlet裡設定session,重定向到jsp裡是上一次設定的session

9樓:匿名使用者

那可能是你的煎餅買得比較好

你可以檢查一下你的頁面是不是有快取,如果頁面是直接從快取裡面讀的,得到的session值可能不會變。強制重新整理,或者在頁面後面加個隨機引數,就可以了。

spring mvc controller中,使用redirect重定向後卻無法傳遞session的屬性

10樓:

重定向是不能傳遞引數的

11樓:相職網

提供的線索無法判斷出問題所在。

可以肯定,無論何種提交,session中的引數是一定可以傳的,如果你看不到,那只是你看不到而已,是別的地方寫錯了,不是redirect的問題!

信我,一定是別的地方錯了。

12樓:幸福專賣店

重定向:以前的request中存放的變數全部失效,並進入一個新的request作用域。

**:以前的request中存放的變數不會失效,就像把兩個頁面拼到了一起。

定向井糾斜怎樣擺放磁性工具面,定向井中,單點定向工具面根據什麼擺,怎麼擺?工具面是一個怎樣的平面?

一般情況下 當井斜 6 時,使用磁工具面角定向,此時,定向時要把工具面擺到設計方位方位。當井斜 6 後,磁工具面將轉變為高邊工具面。此時要根據下步想要的效果擺放工具面,而不是把工具面擺在設計方位上。磁工具面角是指以磁北為始邊,順時針轉到工具面與井底圓平面的交線在水平面上的投影線所轉過的角度。測得的方...

定向越野地圖是怎樣做出來的,定向越野地圖上有哪幾種顏色它們分別代表什麼

請問 bai你是定向越野運動員du嗎?如果你的定向技術是比較zhi過關的話,dao就可以從校園地圖版 開始入手,因權為它的高低起伏不大,你也就不需要考慮等高線的問題。製圖的程式是 先有一張校園的底圖 空拍 基建圖等 將比例尺確定好,再將這張地圖掃描在ocad製圖軟體裡面,在軟體裡將底圖製作好,再打出...

從《舊唐書杜甫傳》杜甫是怎樣的人

杜甫,字子美,本襄陽人,後徙河南鞏縣。曾祖依藝,位終鞏令。祖審言,終膳部員外郎,自有傳。父閒,終奉天令。甫天寶初 注 應為開元末 應進士不第。天寶末,獻三大禮賦,玄宗奇之,召試文章,授京兆府兵曹參軍 注 應為右衛率府參軍 十五載,祿山餡京師,肅宗徵兵靈武。甫自京師宵遁,赴河西 注 時未嘗到河西 謁肅...