1

asp.net セッション管理についてよく理解しています。
しかし、私はそれについていくつか質問があります。

  1. セッションIDが作成されたとき。クライアントがユーザー名とパスワードを使用してアプリケーションにログインするとき。または、クライアントが default.aspx ページにアクセスしようとしたとき。
  2. サーバーがクライアント セッション リクエストを処理する方法。
  3. jsでセッションIDにアクセスできますか?
  4. クライアント サーバー セッションの作成に関して、ASP.NET Web フォームと ASP.NET MVC に違いはありますか?

セッションについて非常に深いアイデアを与えてくれるリンク/本は、私にとって役に立ちます。

前もって感謝します !!!プラシャント

4

1 に答える 1

7

asp.net セッション管理についてよく理解しています。

ここで用語を誤用していると思います。ASP.NET Sessionは 1 つのものでForms Authenticationあり、まったく別のものです。ここでフォーム認証について話していると思います。

1) セッション ID が作成されるとき。クライアントがユーザー名とパスワードを使用してアプリケーションにログインするとき。または、クライアントが default.aspx ページにアクセスしようとしたとき。

FormsAuthentication.SetAuthCookieユーザー名とパスワードの資格情報が LogOn アクションによって検証されると、通常はメソッドが呼び出されます。

2) サーバーがクライアント セッション要求にどのように対応するか。

メソッドが呼び出されると、フォーム認証 Cookie がクライアントにFormsAuthentication.SetAuthCookie送信され、この Cookie は後続の各要求でサーバーに送信されます。Cookie には、サーバーが IPrincipal を入力できるようにする暗号化されたユーザー名の値が含まれています。

3) js でセッション ID にアクセスできますか?

いいえ、フォーム認証 Cookie は、httponlyクライアント スクリプトからアクセスできないことを意味するフラグとともに発行されます。

4) クライアント サーバー セッションの作成に関して、ASP.NET Web フォームと ASP.NET MVC の間に違いはありますか?

それらはまったく同じです。という概念は実はありませんASP.NET MVC client server session creation。このメカニズムはすべて ASP.NET から来ています。


ここで、質問で実際に ASP.NET セッションについて話したとします。その文脈であなたの質問に答えようとします:

1) セッション ID が作成されるとき。クライアントがユーザー名とパスワードを使用してアプリケーションにログインするとき。または、クライアントが default.aspx ページにアクセスしようとしたとき。

HttpContext.Sessionサーバー側のコードがプロパティを使用してセッションの読み取りまたは書き込みを試みるたびに。

2) サーバーがクライアント セッション要求にどのように対応するか。

一部のサーバー側スクリプトがオブジェクトの読み取りまたは書き込みを試みると、セッション Cookie がクライアントに発行されHttpContext.Sessionます。この Cookie は、後続の各リクエストでサーバーに送信されます。Cookie は、サーバーに保存されているセッション データへのアクセスを許可する単なる ID です。デフォルトでは、セッション データはメモリに保存されます。ただし、ASP.NET を構成して、プロセス外または SQLServer に格納することもできます。さまざまなセッション ステート モードの詳細については、 を参照してくださいMSDN

3) js でセッション ID にアクセスできますか?

いいえ、ASP.NET セッション Cookie は、httponlyクライアント スクリプトからアクセスできないことを意味するフラグとともに発行されます。

4) クライアント サーバー セッションの作成に関して、ASP.NET Web フォームと ASP.NET MVC の間に違いはありますか?

それらはまったく同じです。という概念は実はありませんASP.NET MVC client server session creation。このメカニズムはすべて ASP.NET から来ています。

于 2013-03-29T12:01:50.120 に答える