asp入門教程:ASP Session 對象簡介

來源:互聯網
上載者:User

asp入門教程:ASP Session 對象簡介

Session對象是用來儲存的資訊,或更改設定的一個使用者會議。變數儲存在Session對象舉辦資訊單一使用者,並提供給所有的網頁在一個應用程式。


-------------------------------------------------- ------------------------------

Session對象
當你正與一個應用程式,你開啟它,做一些改變,然後將其關閉。這是很像會議。電腦知道你是誰。它知道當您啟動應用程式,當您結束。但是,在互連網上有一個問題: Web伺服器並不知道你是誰和你怎麼做,因為HTTP地址不保持狀態。

ASP技術解決了這一問題創造一個獨特的cookie為每個使用者。的Cookie發送到用戶端,它包含的資訊,確定使用者。這個介面被稱為Session對象。

Session對象是用來儲存的資訊,或更改設定的一個使用者會議。變數儲存在Session對象舉辦資訊單一使用者,並提供給所有的網頁在一個應用程式。共同的資訊儲存在會話變數的名稱,編號,和喜好。伺服器建立一個新的Session對象為每個新使用者,並摧毀了Session對象時,會議結束。


-------------------------------------------------- ------------------------------

什麼時候一個Session開始?
會期開始時:

一種新的使用者請求一個ASP檔案,並Global.asa檔案包含Session_OnStart程式
A值儲存在一個會話變數
使用者請求一個ASP檔案,並Global.asa檔案使用<OBJECT>標記執行個體的對象與範圍會議

-------------------------------------------------- ------------------------------

什麼時候一個Session結束?
甲會議結束,如果使用者還沒有要求或重新整理網頁的申請,在規定的期間。預設情況下,這是20分鐘。

如果你想設定一個逾時間隔是短於或長於預設的,您可以設定逾時財產。

下面的例子設定一個逾時間隔5分鐘:

<%Session.Timeout=5%>
  

要結束會議,立即可以使用Abandon方法:

 

<%Session.Abandon%>
 
    

註:主要問題是會議時,應該停止。我們不知道使用者的要求,去年的最後一個或沒有。所以我們不知道多久我們應該保持會議“活著” 。等待的時間太長了會議利用閑置資源的伺服器上,但如果會議是刪除太快的使用者必須重新開始,因為伺服器已經刪除了所有的資訊。找到合適的逾時間隔可能很困難!

提示:如果您正在使用會話變數,儲存少量資料在其中。


-------------------------------------------------- ------------------------------

儲存和檢索會話變數
最重要的事情的Session對象是,你可以儲存在它的變數。

下面的例子將設定會話變數的使用者名稱,以“唐老鴨”和會話變數年齡的“ 50 ” :

 

<%Session("username")="Donald Duck"Session("age")=50%>
 
      

當值是儲存在一個會話變數它可從任何網頁中的ASP應用程式:

 

Welcome <%Response.Write(Session("username"))%>
 
        

該生產線以上的回報: “歡迎唐老鴨” 。

您還可以儲存使用者偏好在Session對象,然後擷取優先選擇頁面返回給使用者。

下面的例子中指定一個純文字版本的網頁,如果使用者擁有較低的螢幕解析度:

 

<%If Session("screenres")="low" Then%>   This is the text version of the page<%Else%>   This is the multimedia version of the page<%End If%>

 

刪除會話變數
收集的內容包含所有會話變數。

這是可能把一個會話變數與刪除方法。

下面的例子中刪除會話變數“買賣” ,如果價值的會話變數“年齡”低於18 :

 

<%If Session.Contents("age")<18 then   Session.Contents.Remove("sale")End If %>
 
           

要刪除所有變數的一次會議上,使用RemoveAll方法:

<%Session.Contents.RemoveAll()%>

 

loop通過收集的內容
收集的內容包含所有會話變數。您可以通過迴圈目錄的收集,看到什麼儲存在它:

 

<%Session("username")="Donald Duck"Session("age")=50
dim iFor Each i in Session.Contents  Response.Write(i & "<br />")Next%>
 
Result
usernameage
 
               

如果您不知道的一些項目中的目錄的收集,您可以使用計數財產:

 

<%dim idim jj=Session.Contents.CountResponse.Write("Session variables: " & j)For i=1 to j  Response.Write(Session.Contents(i) & "<br />")Next%>
 
輸出值勤.
Session variables: 2Donald Duck50
loop 通過收集StaticObjects 
您可以通過環StaticObjects收集,看到的價值觀所有Object Storage Service在Session對象:
<%dim iFor Each i in Session.StaticObjects  Response.Write(i & "<br />")Next%>
轉載請註明來自www.111cn.net/asp/asp.html
 
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.