Share via


ISessionIDManager.GetSessionID(HttpContext) Methode

Definition

Ruft die Sitzungs-ID aus dem Kontext der aktuellen HTTP-Anforderung ab.

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

Parameter

context
HttpContext

Das aktuelle HttpContext-Objekt, das auf Serverobjekte verweist, die zum Verarbeiten von HTTP-Anforderungen verwendet werden (z. B. die Request-Eigenschaft und die Response-Eigenschaft).

Gibt zurück

Die aktuelle, mit der HTTP-Anforderung gesendete Sitzungs-ID.

Beispiele

Das folgende Codebeispiel zeigt eine teilweise implementierte GetSessionID Methode. Wenn Ihr benutzerdefinierter Sitzungs-ID-Manager cookielose Sitzungsbezeichner unterstützt, müssen Sie eine Lösung zum Senden und Abrufen von Sitzungsbezeichnern in der URL implementieren, z. B. einen ISAPI-Filter.

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

Hinweise

Die GetSessionID -Methode wird von während der SessionStateModule - und HttpApplication.EndRequest -HttpApplication.AcquireRequestStateEreignisse aufgerufen. Wenn Sie keinen gültigen Sitzungsbezeichner aus der HTTP-Anforderung abrufen können, geben Sie zurück null. Wenn die SessionStateModule von der GetSessionID -Methode empfängtnull, ruft sie die CreateSessionID -Methode auf, um einen neuen Sitzungsbezeichner für eine neue Sitzung abzurufen.

Wenn es möglich ist, dass der von der CreateSessionID Implementierung zurückgegebene Wert Zeichen enthält, die in einer HTTP-Antwort oder -Anforderung ungültig sind, sollten Sie die -Methode verwenden, um den UrlEncode Sitzungsbezeichnerwert in Ihrer SaveSessionID Methodenimplementierung zu codieren, und die UrlDecode Methode, um den Sitzungsbezeichnerwert in Ihrer GetSessionID Methodenimplementierung zu decodieren.

Gilt für:

Weitere Informationen