麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Web會話狀態(tài)的維持

2019-11-18 14:08:25
字體:
供稿:網(wǎng)友

  Web會話狀態(tài)的維持

假如你對以下問題感愛好但是又不能確切的回答,你就應(yīng)該閱讀此文.

1.session是什么?
2.Cookie又是什么?
3.假如完全禁用了Cookies,Session還起作用嗎?
4.為什么有的網(wǎng)站登錄一次以后就不用再登錄?
5.asp中的Session是否依靠Cookie?
6.jsp中的Session是否依靠Cookie?
7.asp.net中的Session又是怎么回事?

下面將具體的講述會話狀態(tài)的維持,看完之后你應(yīng)該可以回答上面的幾個問題了
1.Session和Cookie的由來
這里我不區(qū)分Cookie和Cookies,只是一個復(fù)數(shù)形式而已.
我們都知道http是無狀態(tài)的協(xié)議,就是說每次請求都是分開的,服務(wù)器根本
不知道兩次請求是否是同一個人,假如我們的內(nèi)容是完全公開的,也就是所有
內(nèi)容誰都可以看(比如sina的新聞),這種情況呀根本就沒有必要知道兩次請求
是不是同一個.但是大部分情況下我們不希望這樣,我們希望只有會員登錄之后
才能訪問(所有的論壇幾乎都是這樣).而其他人不答應(yīng)他們反問,于是便要知道
每次請求的是不是同一個人,這就是會話,也就是一個Session,而且這個
Session是以Cookie為基礎(chǔ)的,Cookie最才是網(wǎng)景公司提出的,也叫小甜餅.
服務(wù)器端對每個請求維持一個會話,并且有一個唯一的SessionID.假如客戶端
沒有禁用Cookie的話,客戶第一次請求的時候這個ID會寫到客戶端的硬盤上
(不相信?看一下文件夾C:/Documents and Settings/UserName/
Local Settings/Temporary Internet Files 下的Cookie文件,都是文本文件).
以后你每次請求的時候都會加上這個ID值,服務(wù)器端就可以知道是不是同一個
請求了.假如還不相信的話,你可以這樣做個試驗:
1.選擇一個你要用用戶名登錄的網(wǎng)站(最好是ASP的,如論壇).
2.先正常登錄一遍,確定可以登錄,再把瀏覽器關(guān)了)
3.選擇Internet選項(IE屬性頁),選擇隱藏選項卡,把設(shè)置調(diào)到最高,確定.
4.重新開IE,登錄你剛才登錄過的站點,怎么登都等不上去的.

2.Session和Cookie的關(guān)系
當(dāng)前維持會話狀態(tài)的途徑有且只有兩種種
第一種:Cookie,最常見的,95%以上的會話都是Cookie的功勞.
第二種:URL重寫,把SessionID附加到URL中,JSP實現(xiàn)了但用的不多.
假如你用過session,你可能很希奇:我們一般都是用session維持會話,這里怎么沒有?
答案很簡單:上面兩種都是途徑,Session是我們的目的.
一句話概括Session和Cookie的關(guān)系:Cookie是維持Session最常見的一種途徑.

3.Cookie的過期和Session的超時
你可以自己設(shè)置Cookie的過期(其實是服務(wù)器替你設(shè)置的),假如你設(shè)置為用不過期,
以后就都不用再重新登陸了,假如這臺機(jī)器就你一個人用完全可以這樣設(shè)置,否則
最好不要這樣設(shè)置.假如你很長時間沒有反應(yīng),就是沒有新的請求,Session就有可能
過期,你可能碰到這樣的情況:明明已經(jīng)登錄了,過了一會兒回來卻說我沒有登錄
提示重新登錄.就是因為Session過期了,服務(wù)器可以設(shè)置過期的時間.

4.禁用了Cookie如何實現(xiàn)會話
假如客戶端完全禁用Cookie,將會發(fā)生什么現(xiàn)象:
對于ASP,無法跟蹤會話,也就是每個請求都當(dāng)作新的請求.
對于JSP,可以通過重寫URL實現(xiàn)會話,session.encodeURL(String path)
session.encodeURL("index.jsp")=index.jsp;jsessionid=431D980051204FC8DC3
BF75840F7AF71
可以看到后面的sessionid并沒有包括在QueryString中(在?后面)
對于ASP.NET 同樣支持重寫URL,學(xué)習(xí)JSP的,不過JSP并不是所有的WebServer都支持重寫URL

5.QueryString和HiddenForm
你可能覺得他們也可以維持會話,但是事實上是不可以的,他們只能傳遞參數(shù)。不過
在ASP.NET中的服務(wù)器事件模型廣泛了使用了Hidden來表示控件的viewState(這個也是
ASP.NET比ASP,JSP先進(jìn)的地方,是一種全新的技術(shù))
為什么他們只能傳遞參數(shù)而不能實現(xiàn)會話呢?大致過程是這樣的:
服務(wù)器接收到一個請求,假如沒有獲得SessionID,就產(chǎn)生一個新的會話.可能你認(rèn)為這樣


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久久中文字幕 | 欧美女孩videos | 在线成人一区 | 欧美五月婷婷 | 一级片999 | 久久免费视频3 | 韩国美女一区 | 粉嫩蜜桃麻豆免费大片 | 国产免费最爽的乱淫视频a 毛片国产 | 亚洲一区二区三区视频免费 | 国产精品美女久久久久久不卡 | 欧美aⅴ视频 | 男女羞羞视频 | 欧美日韩在线视频一区 | 日本羞羞的午夜电视剧 | 国产精品夜色视频一级区 | 成人福利网 | 中国av免费在线观看 | 好吊色欧美一区二区三区四区 | 国产午夜免费 | 免费在线观看毛片视频 | 精品亚洲夜色av98在线观看 | 九九热精品视频在线免费观看 | 欧美精品一区二区三区在线播放 | 在线观看视频毛片 | 91精彩视频 | 精品在线一区二区三区 | 国产精品久久久久久久av | 国产日韩一区二区三区在线观看 | 欧美特一级片 | 国产日韩精品欧美一区视频 | 久久9色| 精品在线观看一区二区三区 | 成人在线免费观看小视频 | 亚洲欧美国产高清 | av影院在线播放 | 久久精品视频网站 | 国产999视频在线观看 | 亚洲爱爱图 | 色999国产 | www.99re1.com|