ASP の Session オブジェクトの 3 つのメソッドの紹介
ASP には、アプリケーション オブジェクトとセッション オブジェクトという 2 つの内部オブジェクトがあり、アプリケーション期間中、Web サイトにアクセスするすべてのユーザーによって共有されます。セッションの場合、現在のユーザーに対してのみ存在します。
セッション オブジェクトの概要
コンピューター上でアプリケーションを操作するときは、セッションと同じように、アプリケーションを開いて変更を加えて閉じます。コンピュータは、ユーザーが誰であるかを認識し、ユーザーがいつアプリケーションを開いたり閉じたりするかを認識します。ただし、問題はインターネット上で発生します。HTTP アドレスはステータスを維持できないため、Web サーバーはあなたが誰であり、あなたが何をしたかを知りません。
Session オブジェクト の主な目的は、Web サイトにアクセスする各ユーザーの情報を保存することです。たとえば、ユーザーがログインしたときに、現在のセッションを識別するための情報をユーザーのセッションに保存できます。ユーザーがログインしました。
セッションの原理は次のとおりです、ユーザーが初めて Web サイトにアクセスすると、IIS は長いランダムな 文字列 をユーザーに割り当てます。ユーザーがサーバー上の他のページにアクセスすると、サーバーはセッション ID を取得し、そのセッション ID に関連するデータをメモリから取得して、セッション オブジェクトのコレクションに入れます。
Contents コレクション
現在のユーザーに関する情報をこのコレクションに保存できます。たとえば、次のコードはデータを保存および読み取る方法を示しています。
<% '名字为username的Session集合中存储了一个“ZhangSan”字符串 Session.Contents("username") = "ZhangSan" Dim UserName '读取Session中的数据,可以省略Contents' UserName = Session.Contents("username")和下面一样 UserName = Session("username") Response.Write("<h2 id="nbsp-nbsp-UserName-nbsp-nbsp">" & UserName & "</h2>") %>
Session オブジェクトには 3 つのメソッド (Contents.Remove、Contents.RemoveAll) があります。 、Abandon)、Session コレクション内のデータを削除するか、現在のセッションを放棄するために使用されます。
最初の例(SessionContents.asp) Remove メソッドと RemoveAll メソッドの使用方法を示します。コードは次のとおりです。
...<h3 id="当前SessionID值为-nbsp-Session-SessionID">当前SessionID值为 <%=Session.SessionID%></h3><h3 id="Session中存储数据">Session中存储数据</h3><%'利用 Contents.Count 遍历 Session 的过程Sub Traversal_P() Dim i For i = 1 To Session.Contents.Count Response.Write("Session(""" & Session.Contents.key(i) & """) = " & Session.Contents(i)) Response.Write("<br>") NextEnd Sub'For Each 遍历 Session.Contents 集合 Sub Traversal_E() Dim x For Each x In Session.Contents Response.Write("Session(""" & x & """) = " & Session(x)) Response.Write("<br>") NextEnd Sub'Session.Contents中存储了多个数据,如下Session.Contents("username") = "ZhangSan"Session.Contents("password") = "12345678"Session.Contents("date")="2015/08/14"Session.contents("author")="pchmonster"'遍历 Contents 集合Traversal_E()%><hr><h3 id="删除名为username的数据">删除名为username的数据</h3><%'删除 username 数据Session.Contents.Remove("username")'重新遍历 Contents 集合Traversal_P()%><hr><h3 id="删除所有的Session数据">删除所有的Session数据</h3><%'删除所有的数据Session.Contents.RemoveAll() Traversal_E()%>...
上記のコードは、実行後に次のように表示されます。
これらのコードは、次のとおりです。セッションを横断する方法 .Contents コレクションの 2 つのメソッドを詳しく見てください。
2 番目の例 (SessionAbandon.asp) は、Abandon メソッドの効果を示しています。このデモを通じて、RemoveAll メソッドと Abandon メソッドの違いは、RemoveAll は現在のコレクションのみを削除するが、顧客は削除することであることがわかります。同じ SessionID を引き続き使用します (最初の例では、SessionID は変更されません)。 Abandon メソッドが呼び出された後も、現在のページで Session コレクションにアクセスできます。ページが閉じられるか更新された後、前のセッションは削除されます (この例では、SessionID が変更されます)。
コードは次のとおりです:<%'Abandon的使用后,在当前页面仍可以访问Session集合,关闭页面或刷新后'会使Session被删除,SessionID也就会改变Session.Abandon()'首先我们要记录一下SessionID的值,存放到Cookies中Dim numVisits, SID Response.Cookies("numVisits").Expires = DateAdd("d", 10, Now) Response.Cookies("SID").Expires = DateAdd("d", 10, Now) SID = Request.Cookies("SID") numVisits = Request.Cookies("numVisits")If numVisits = "" or SID = "" Then '如果是第一次运行该页面,则记录当前Sessio nID值 Response.Cookies("numVisits") = 1 Response.Cookies("SID") = Session.SessionID%> <h3 id="您这是第一次访问该页面-当前页面的SessionID为">您这是第一次访问该页面,当前页面的SessionID为</h3> <h2><%=Session.SessionID%></h2><%Else%> <hr> <h3 id="您这是第-numVisits-次访问该页面-当前页面的SessioID为">您这是第<%=numVisits%>次访问该页面,当前页面的SessioID为</h3> <h2><%=Session.SessionID%></h2> <h3 id="您第一次访问时的SessionID为">您第一次访问时的SessionID为</h3> <h2><%=Request.Cookies("SID")%></h2><% numVisits = numVisits + 1 Response.Cookies("numVisits") = numVisitsEnd If%>
static 文字列に作用します Response.CodePage、Session.CodePage 動的に出力されるすべての文字列に作用します
Response.CodePage スコープは 1 つの応答のみです
Session.CodePage スコープはセッション内のすべての応答です
SessionID 属性可以获得当前用户的 SessionID,有时候在客户端浏览器不支持 Cookies 的情况下,你可以将 SessionID 附加在客户端的 QueryString 变量中,从而标识每一个客户端。
Timeout 属性用于设定客户的 Session 超时期。客户对于 SessionID 并不是长期占有的,在其一段时间内没有和服务器端进行任何交互后,服务器端将放弃该 Session。
下面的代码(SessionCST.asp)中将演示这个三个属性的使用方法,代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <%Session.CodePage = 65001'作用于所有动态输出的字符串%> <!doctype html> <html> <head> <meta charset="utf-8"> <title>CodePage、SessionID、TimeOut属性的应用</title> </head> <body> <h3 id="当前页面使用的CodePage是">当前页面使用的CodePage是:</h3> <h2><%=Session.CodePage%></h2> <hr> <h3 id="当前页面的SessionID是">当前页面的SessionID是:</h3> <h2><%=Session.SessionID%></h2> <hr> <h3 id="当前页面Session默认超时时间为">当前页面Session默认超时时间为:</h3> <h2 id="Session-Timeout-分钟"><%=Session.Timeout%>分钟</h2> </body> </html>
运行后,效果如下:
【相关推荐】
1. ASP免费视频教程
以上がASP の Session オブジェクトの 3 つのメソッドの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









ASP 組み込みオブジェクトには、Request、Response、Session、Application、Server、Session.Contents、Application.Contents、Server.CreateObject、Server.MapPath、Server.Execute、Server.Transfer などが含まれます。詳細な紹介: 1. リクエスト: HTTP リクエスト オブジェクトなどを表します。

ASP スキャン ツールの脆弱性検出: 1. 適切なスキャン ツールを選択します; 2. スキャン ツールでスキャン ターゲットを構成します; 3. 必要に応じてスキャン オプションを構成します; 4. 構成が完了したら、スキャン ツールを起動してスキャンを開始します; 5 . スキャン ツール 検出された脆弱性とセキュリティ問題をリストしたレポートが生成されます; 6. レポートの推奨事項に従って、検出された脆弱性とセキュリティ問題を修正します; 7. 脆弱性を修正した後、スキャン ツールを再実行して、脆弱性を悪用した修復が成功しました。

ASP 開発ツールには、Visual Studio、Dreamweaver、FrontPage、EditPlus、UltraEdit、SQL Server Management Studio、RAD Studio、Delphi、Asp.NET、Oracle SQL Developer などがあります。

接続方法: 1. ADO を使用してデータベースに接続します; 2. DSN を使用してデータベースに接続します; 3. 接続文字列を使用してデータベースに接続します。

方法には、1. 専用の脆弱性スキャン ツールを使用する、2. ASP アプリケーションの脆弱性を発見して検証するための手動テスト、3. ASP アプリケーションのコードと構成ファイルをチェックするセキュリティ監査の実施、4. 脆弱性悪用フレームワークの使用、5. レビューが含まれます。 ASP アプリケーションのコード。

ASP による脆弱性の手動検出: 1. ユーザー入力に対する ASP アプリケーションの検証およびフィルタリング メカニズムをチェックする; 2. 出力データに対する ASP アプリケーションのエンコードおよびフィルタリング メカニズムをチェックする; 3. ASP アプリケーションの認証およびセッション管理メカニズムをチェックする; 4.ファイルとディレクトリに対する ASP アプリケーションのアクセス許可制御、5. ASP アプリケーションのエラー処理を確認する、6. ASP アプリケーションのデータベース セキュリティを確認する、7. ASP アプリケーションの構成ファイルとサーバー構成を確認する。

iPhoneの平均販売価格(ASP)は昨年、前年比14%増と2桁の伸びを達成した。 iPhone 13 の人気が主要な原動力となり、世界のスマートフォン市場全体の年間売上高を記録的な 4,480 億ドルに押し上げています。部品不足にも関わらず、スマートフォン市場は前年比7%成長し、Appleが断然最大のシェアを獲得した…市場情報会社カウンターポイントは本日、最新の予測を発表した。 Counterpoint の MarketMonitorService の最新調査によると、世界のスマートフォン市場の収益は 2021 年に 4,480 億米ドルを超えると予想されています。部品不足と新型コロナウイルス感染症(COVID-19)による制限により世界的な供給が混乱し続けているにもかかわらず、

ASP セキュリティ監査の脆弱性検出手順: 1. ASP アプリケーションに関する関連情報を収集する; 2. ASP アプリケーションのソース コードを慎重に分析する; 3. ASP アプリケーションのユーザー入力の検証およびフィルタリング メカニズムを確認する; 4. アプリケーションのエンコーディングとフィルタリング メカニズムを確認する出力データのフィルタリングメカニズムをチェックする; 5. アプリケーションの認証およびセッション管理メカニズムをチェックする; 6. ファイルとディレクトリに対するアプリケーションのアクセス許可制御をチェックする; 7. アプリケーションのエラー処理をチェックする; 8. アプリケーションの構成ファイルとサーバー構成をチェックする; 9. 脆弱性を修正します。
