這篇文章主要介紹ASP中session的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
Session 對(duì)象用于存儲(chǔ)用戶的信息。存儲(chǔ)于 session 對(duì)象中的變量持有單一用戶的信息,并且對(duì)于一個(gè)應(yīng)用程序中的所有頁(yè)面都是可用的。
Session 對(duì)象
當(dāng)您操作某個(gè)應(yīng)用程序時(shí),您打開(kāi)它,做些改變,然后將它關(guān)閉。這很像一次對(duì)話(Session)。計(jì)算機(jī)知道您是誰(shuí)。它清楚您在何時(shí)打開(kāi)和關(guān)閉應(yīng)用程序。但是在因特網(wǎng)上有一個(gè)問(wèn)題:由于 HTTP 地址無(wú)法存留狀態(tài),web 服務(wù)器并不知道您是誰(shuí)以及您做了什么。
ASP 通過(guò)為每位用戶創(chuàng)建一個(gè)唯一的 cookie 的方式解決了這個(gè)問(wèn)題。cookie 被傳送至客戶端,它含有可識(shí)別用戶的信息。這種接口被稱作 Session 對(duì)象。
Session 對(duì)象用于存儲(chǔ)關(guān)于用戶的信息,或者為一個(gè)用戶的 session 更改設(shè)置。存儲(chǔ)于 session 對(duì)象中的變量存有單一用戶的信息,并且對(duì)于應(yīng)用程序中的所有頁(yè)面都是可用的。存儲(chǔ)于 session 對(duì)象中的信息通常是 name、id 以及參數(shù)。服務(wù)器會(huì)為每個(gè)新的用戶創(chuàng)建一個(gè)新的 Session,并在 session 到期時(shí)撤銷掉這個(gè) Session 對(duì)象。
Session 何時(shí)開(kāi)始?
Session 開(kāi)始于:
*當(dāng)某個(gè)新用戶請(qǐng)求了一個(gè) ASP 文件,并且 Global.asa 文件引用了 Session_OnStart 子程序時(shí);
*當(dāng)某個(gè)值存儲(chǔ)在 Session 變量中時(shí);
*當(dāng)某個(gè)用戶請(qǐng)求了一個(gè) ASP 文件,并且 Global.asa 使用 <object> 標(biāo)簽通過(guò) session 的 scope 來(lái)例示某個(gè)對(duì)象時(shí);
Session 何時(shí)結(jié)束?
假如用戶沒(méi)有在規(guī)定的時(shí)間內(nèi)在應(yīng)用程序中請(qǐng)求或者刷新頁(yè)面,session 就會(huì)結(jié)束。默認(rèn)值為 20 分鐘。
如果您希望將超時(shí)的時(shí)間間隔設(shè)置得更長(zhǎng)或更短,可以設(shè)置 Timeout 屬性。
下面的例子設(shè)置了 5 分鐘的超時(shí)時(shí)間間隔:
<% Session.Timeout=5 %>
要立即結(jié)束 session,可使用 Abandon 方法:
<% Session.Abandon %>
注意:使用 session 時(shí)主要的問(wèn)題是它們?cè)撛诤螘r(shí)結(jié)束。我們不會(huì)知道用戶最近的請(qǐng)求是否是最后的請(qǐng)求。因此我們不清楚該讓 session“ 存活”多久。為某個(gè)空閑的 session 等待太久會(huì)耗盡服務(wù)器的資源。然而假如 session 被過(guò)早地刪除,那么用戶就不得不一遍又一遍地重新開(kāi)始,這是因?yàn)榉?wù)器已經(jīng)刪除了所有的信息。尋找合適的超時(shí)間隔時(shí)間是很困難的。
提示:如果您正在使用 session 變量,請(qǐng)不要在其中存儲(chǔ)大量的數(shù)據(jù)。
存儲(chǔ)和取回 session 變量
Session 對(duì)象大的優(yōu)點(diǎn)是可在其中存儲(chǔ)變量,以供后續(xù)的網(wǎng)頁(yè)讀取,其應(yīng)用范圍是很廣的。
下面的例子把 "Donald Duck" 賦值給名為 username 的 session 變量,并把 "50" 賦值給名為 age 的 session 變量:
<% Session("username")="Donald Duck" Session("age")=50 %>
一旦值被存入 session 變量,它就能被 ASP 應(yīng)用程序中的任何頁(yè)面使用:
Welcome <%Response.Write(Session("username"))%>
上面這行程序返回的結(jié)果是: "Welcome Donald Duck"。
也可以在 session 對(duì)象中保存用戶參數(shù),然后通過(guò)訪問(wèn)這些參數(shù)來(lái)決定向用戶返回什么頁(yè)面。
下面的例子規(guī)定,假如用戶使用低顯示器分辨率,則返回純文本版本的頁(yè)面:
<%If Session("screenres")="low" Then%> This is the text version of the page <%Else%> This is the multimedia version of the page <%End If%>
移除 session 變量
contents 集合包含所有的 session 變量。
可通過(guò) remove 方法來(lái)移除 session 變量。
在下面的例子中,假如 session 變量 "age" 的值小于 18,則移除 session 變量 "sale":
<% If Session.Contents("age")<18 then Session.Contents.Remove("sale")End If %>
如需移除 session 中的所有變量,請(qǐng)使用 RemoveAll 方法:
<% Session.Contents.RemoveAll() %>
遍歷 contents 集合
contents 集合包含所有的 session 變量。可通過(guò)遍歷 contents 集合,來(lái)查看其中存儲(chǔ)的變量:
<% Session("username")="Donald Duck" Session("age")=50 dim i For Each i in Session.Contents Response.Write(i & "<br />") Next %>
結(jié)果:
username age
如果需要了解 contents 集合中的項(xiàng)目數(shù)量,可使用 count 屬性:
<% dim i dim j j=Session.Contents.CountResponse.Write("Session variables: " & j) For i=1 to j Response.Write(Session.Contents(i) & "<br />") Next %>
結(jié)果:
Session variables: 2 Donald Duck 50
遍歷 StaticObjects 集合
可通過(guò)循環(huán) StaticObjects 集合,來(lái)查看存儲(chǔ)在 session 對(duì)象中所有對(duì)象的值:
<% dim i For Each i in Session.StaticObjects Response.Write(i & "<br />") Next %>
以上是“ASP中session的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前文章:ASP中session的示例分析-創(chuàng)新互聯(lián)
新聞來(lái)源:http://www.chinadenli.net/article42/dsgjec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、域名注冊(cè)、軟件開(kāi)發(fā)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容