ISessionIDManager.GetSessionID(HttpContext) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在の HTTP 要求のコンテキストからセッション識別子を取得します。
public:
System::String ^ GetSessionID(System::Web::HttpContext ^ context);
public string GetSessionID (System.Web.HttpContext context);
abstract member GetSessionID : System.Web.HttpContext -> string
Public Function GetSessionID (context As HttpContext) As String
パラメーター
- context
- HttpContext
HttpContext プロパティ、Request プロパティなどの HTTP 要求を処理するためのサーバー オブジェクトを参照する現在の Response オブジェクト。
戻り値
HTTP 要求と共に送信される現在のセッション識別子。
例
次のコード例は、部分的に実装されたメソッドを GetSessionID 示しています。 カスタム セッション ID マネージャーで Cookie レス セッション識別子がサポートされている場合は、ISAPI フィルターなどの URL でセッション識別子を送信および取得するためのソリューションを実装する必要があります。
public string GetSessionID(HttpContext context)
{
string id = null;
if (pConfig.Cookieless == HttpCookieMode.UseUri)
{
// Retrieve the SessionID from the URI.
}
else
{
id = context.Request.Cookies[pConfig.CookieName].Value;
}
// Verify that the retrieved SessionID is valid. If not, return null.
if (!Validate(id))
id = null;
return id;
}
Public Function GetSessionID(context As HttpContext) As String _
Implements ISessionIDManager.GetSessionID
Dim id As String = Nothing
If pConfig.Cookieless = HttpCookieMode.UseUri Then
' Retrieve the SessionID from the URI.
Else
id = context.Request.Cookies(pConfig.CookieName).Value
End If
' Verify that the retrieved SessionID is valid. If not, return Nothing.
If Not Validate(id) Then _
id = Nothing
Return id
End Function
注釈
メソッドはGetSessionID、 イベントと HttpApplication.EndRequest イベント中に HttpApplication.AcquireRequestStateSessionStateModule によって呼び出されます。 HTTP 要求から有効なセッション識別子を取得できない場合は、 を返します null
。 が SessionStateModule メソッドからGetSessionIDを受け取null
った場合は、 メソッドをCreateSessionID呼び出して、新しいセッションの新しいセッション識別子を取得します。
実装によって CreateSessionID 返される値に HTTP 応答または要求で無効な文字が含まれている可能性がある場合は、 メソッドを UrlEncode 使用して、メソッド実装でセッション識別子の値を SaveSessionID エンコードし UrlDecode 、 メソッドを使用してメソッド実装のセッション識別子値を GetSessionID デコードする必要があります。
適用対象
こちらもご覧ください
.NET