HttpContext Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zapouzdřuje všechny informace specifické pro HTTP o jednotlivých požadavcích HTTP.
public ref class HttpContext sealed : IServiceProvider
public sealed class HttpContext : IServiceProvider
type HttpContext = class
interface IServiceProvider
Public NotInheritable Class HttpContext
Implements IServiceProvider
- Dědičnost
-
HttpContext
- Implementuje
Příklady
Následující příklad ukazuje, jak získat přístup a zobrazit vlastnosti objektu HttpContext . Kontext aktuálního požadavku HTTP je přístupný pomocí Context vlastnosti objektu Page .
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
// The HttpContext associated with the page can be accessed by the Context property.
System.Text.StringBuilder sb = new System.Text.StringBuilder();
// Use the current HttpContext object to determine if custom errors are enabled.
sb.Append("Is custom errors enabled: " +
Context.IsCustomErrorEnabled.ToString() + "<br/>");
// Use the current HttpContext object to determine if debugging is enabled.
sb.Append("Is debugging enabled: " +
Context.IsDebuggingEnabled.ToString() + "<br/>");
// Use the current HttpContext object to access the current TraceContext object.
sb.Append("Trace Enabled: " +
Context.Trace.IsEnabled.ToString() + "<br/>");
// Use the current HttpContext object to access the current HttpApplicationState object.
sb.Append("Number of items in Application state: " +
Context.Application.Count.ToString() + "<br/>");
// Use the current HttpContext object to access the current HttpSessionState object.
// Session state may not be configured.
try
{
sb.Append("Number of items in Session state: " +
Context.Session.Count.ToString() + "<br/>");
}
catch
{
sb.Append("Session state not enabled. <br/>");
}
// Use the current HttpContext object to access the current Cache object.
sb.Append("Number of items in the cache: " +
Context.Cache.Count.ToString() + "<br/>");
// Use the current HttpContext object to determine the timestamp for the current HTTP Request.
sb.Append("Timestamp for the HTTP request: " +
Context.Timestamp.ToString() + "<br/>");
// Assign StringBuilder object to output label.
OutputLabel.Text = sb.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HttpContext Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
Using the current HttpContext to get information about the current page.
<br />
<asp:Label id="OutputLabel" runat="server"></asp:Label>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' The HttpContext associated with the page can be accessed by the Context property.
Dim sb As New System.Text.StringBuilder()
' Use the current HttpContext object to determine if custom errors are enabled.
sb.Append("Is custom errors enabled: " & _
Context.IsCustomErrorEnabled.ToString() & "<br/>")
' Use the current HttpContext object to determine if debugging is enabled.
sb.Append("Is debugging enabled: " & _
Context.IsDebuggingEnabled.ToString() & "<br/>")
' Use the current HttpContext object to access the current TraceContext object.
sb.Append("Trace Enabled: " & _
Context.Trace.IsEnabled.ToString() & "<br/>")
' Use the current HttpContext object to access the current HttpApplicationState object.
sb.Append("Number of items in Application state: " & _
Context.Application.Count.ToString() & "<br/>")
' Use the current HttpContext object to access the current HttpSessionState object.
' Session state may not be configured.
Try
sb.Append("Number of items in Session state: " & _
Context.Session.Count.ToString() & "<br/>")
Catch ex As Exception
sb.Append("Session state not enabled. <br/>")
End Try
' Use the current HttpContext object to access the current Cache object.
sb.Append("Number of items in the cache: " & _
Context.Cache.Count.ToString() & "<br/>")
' Use the current HttpContext object to determine the timestamp for the current HTTP Request.
sb.Append("Timestamp for the HTTP request: " & _
Context.Timestamp.ToString() & "<br/>")
' Assign StringBuilder object to output label.
OutputLabel.Text = sb.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HttpContext Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
Using the current HttpContext to get information about the current page.
<br />
<asp:Label id="OutputLabel" runat="server"></asp:Label>
</div>
</form>
</body>
</html>
Poznámky
Třídy, které dědí IHttpModule rozhraní, IHttpHandler poskytují odkaz na HttpContext objekt pro aktuální požadavek HTTP. Objekt poskytuje přístup k vnitřní Request, Responsea Server vlastnosti požadavku.
Důležité
Tento objekt je připravený pro uvolňování paměti po HttpRequest dokončení. Jeho využití po dokončení požadavku může vést k nedefinovaným chováním, jako NullReferenceExceptionje například .
Tento objekt je k dispozici pouze ve vlákně řízeném ASP.NET. Použití ve vláknech na pozadí může vést k nedefinovaným chováním.
Konstruktory
HttpContext(HttpRequest, HttpResponse) |
Inicializuje novou instanci HttpContext třídy pomocí zadaných objektů požadavku a odpovědi. |
HttpContext(HttpWorkerRequest) |
Inicializuje novou instanci HttpContext třídy, která používá zadaný objekt worker-request. |
Vlastnosti
AllErrors |
Získá pole chyb kumulovaných při zpracování požadavku HTTP. |
AllowAsyncDuringSyncStages |
Získá nebo nastaví hodnotu, která označuje, zda jsou asynchronní operace povoleny při zpracování požadavků ASP.NET, pokud nejsou očekávané. |
Application |
HttpApplicationState Získá objekt pro aktuální požadavek HTTP. |
ApplicationInstance |
Získá nebo nastaví HttpApplication objekt pro aktuální požadavek HTTP. |
AsyncPreloadMode |
Získá nebo nastaví objekt, který obsahuje příznaky, které se vztahují k asynchronnímu režimu předběžného načtení. |
Cache |
Cache Získá objekt pro aktuální doménu aplikace. |
Current |
Získá nebo nastaví HttpContext objekt pro aktuální požadavek HTTP. |
CurrentHandler |
IHttpHandler Získá objekt, který představuje aktuálně spuštěnou obslužnou rutinu. |
CurrentNotification |
RequestNotification Získá hodnotu, která označuje aktuální HttpApplication událost, která zpracovává. |
Error |
Získá první chybu (pokud existuje) kumulovaná během zpracování požadavku HTTP. |
Handler |
Získá nebo nastaví IHttpHandler objekt zodpovědný za zpracování požadavku HTTP. |
IsCustomErrorEnabled |
Získá hodnotu označující, zda jsou pro aktuální požadavek HTTP povoleny vlastní chyby. |
IsDebuggingEnabled |
Získá hodnotu určující, zda aktuální požadavek HTTP je v režimu ladění. |
IsPostNotification |
Získá hodnotu, která je aktuálním bodem zpracování v kanálu ASP.NET těsně po HttpApplication dokončení zpracování události. |
IsWebSocketRequest |
Získá hodnotu, která označuje, zda je AspNetWebSocket požadavek požadavek. |
IsWebSocketRequestUpgrading |
Získá hodnotu, která označuje, zda připojení upgraduje z připojení HTTP na AspNetWebSocket připojení. |
Items |
Získá kolekci klíč/hodnota, která se dá použít k uspořádání a sdílení dat mezi IHttpModule rozhraním a IHttpHandler rozhraním během požadavku HTTP. |
PageInstrumentation |
Získá odkaz na instanci služby instrumentace stránky pro tento požadavek. |
PreviousHandler |
Získá objekt pro nadřazenou obslužnou IHttpHandler rutinu. |
Profile |
ProfileBase Získá objekt pro aktuální profil uživatele. |
Request |
HttpRequest Získá objekt pro aktuální požadavek HTTP. |
Response |
HttpResponse Získá objekt pro aktuální odpověď HTTP. |
Server |
HttpServerUtility Získá objekt, který poskytuje metody používané při zpracování webových požadavků. |
Session |
HttpSessionState Získá objekt pro aktuální požadavek HTTP. |
SkipAuthorization |
Získá nebo nastaví hodnotu, která určuje, zda UrlAuthorizationModule má objekt přeskočit autorizační kontrolu aktuálního požadavku. |
ThreadAbortOnTimeout |
Získá nebo nastaví hodnotu, která určuje, zda má modul runtime ASP.NET volat Abort() na vlákno, které tento požadavek obsluhuje, když vyprší časový limit požadavku. |
Timestamp |
Získá počáteční časové razítko aktuálního požadavku HTTP. |
Trace |
TraceContext Získá objekt pro aktuální odpověď HTTP. |
User |
Získá nebo nastaví informace o zabezpečení pro aktuální požadavek HTTP. |
WebSocketNegotiatedProtocol |
Získá vyjednaný protokol, který byl odeslán ze serveru klientovi pro AspNetWebSocket připojení. |
WebSocketRequestedProtocols |
Získá seřazený seznam protokolů požadovaných klientem. |
Metody
AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>) |
AspNetWebSocket Přijímá požadavek pomocí zadané funkce uživatele. |
AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>, AspNetWebSocketOptions) |
AspNetWebSocket Přijímá požadavek pomocí zadané funkce uživatele a objektu možností. |
AddError(Exception) |
Přidá výjimku do kolekce výjimek pro aktuální požadavek HTTP. |
AddOnRequestCompleted(Action<HttpContext>) |
Vyvolá virtuální událost, ke které dochází při ukončení části požadavku HTTP. |
ClearError() |
Vymaže všechny chyby aktuálního požadavku HTTP. |
DisposeOnPipelineCompleted(IDisposable) |
Umožňuje volání metody objektu Dispose() při AspNetWebSocket dokončení připojení části tohoto požadavku. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetAppConfig(String) |
Zastaralé.
Vrátí požadované informace o konfiguraci aktuální aplikace. |
GetConfig(String) |
Zastaralé.
Vrátí požadované informace o konfiguraci pro aktuální požadavek HTTP. |
GetGlobalResourceObject(String, String) |
Získá objekt prostředku na úrovni aplikace na základě zadaných ClassKey a ResourceKey vlastností. |
GetGlobalResourceObject(String, String, CultureInfo) |
Získá objekt prostředku na úrovni aplikace na základě zadaných ClassKey a vlastností a ResourceKey objektu CultureInfo . |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetLocalResourceObject(String, String) |
Získá objekt prostředku na úrovni stránky na základě zadaných VirtualPath a ResourceKey vlastností. |
GetLocalResourceObject(String, String, CultureInfo) |
Získá objekt prostředku na úrovni stránky na základě zadaných VirtualPath a vlastností a ResourceKey objektu CultureInfo . |
GetSection(String) |
Získá zadaný oddíl konfigurace pro výchozí konfiguraci aktuální aplikace. |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
RemapHandler(IHttpHandler) |
Umožňuje zadat obslužnou rutinu požadavku. |
RewritePath(String) |
Přepíše adresu URL pomocí dané cesty. |
RewritePath(String, Boolean) |
Přepíše adresu URL pomocí dané cesty a logické hodnoty, která určuje, jestli se změní virtuální cesta pro prostředky serveru. |
RewritePath(String, String, String) |
Přepíše adresu URL pomocí dané cesty, informací o cestě a informací o řetězci dotazu. |
RewritePath(String, String, String, Boolean) |
Přepíše adresu URL pomocí dané virtuální cesty, informací o cestě, informací o řetězci dotazu a logické hodnoty, která určuje, jestli je cesta k souboru klienta nastavená na cestu přepsání. |
SetSessionStateBehavior(SessionStateBehavior) |
Nastaví typ chování stavu relace, které se vyžaduje pro podporu požadavku HTTP. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
IServiceProvider.GetService(Type) |
Vrátí objekt pro aktuální typ služby. |