Sdílet prostřednictvím


HttpContext Třída

Definice

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 . K kontextu aktuálního požadavku HTTP se přistupuje 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 jsou poskytovány 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 použití po dokončení požadavku může vést k nedefinované chování, 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ýmu chování.

Konstruktory

Name Description
HttpContext(HttpRequest, HttpResponse)

Inicializuje novou instanci HttpContext třídy pomocí zadaného objektu požadavku a odpovědi.

HttpContext(HttpWorkerRequest)

Inicializuje novou instanci HttpContext třídy, která používá zadaný objekt worker-request.

Vlastnosti

Name Description
AllErrors

Získá pole chyb kumulovaných při zpracování požadavku HTTP.

AllowAsyncDuringSyncStages

Získá nebo nastaví hodnotu, která označuje, zda asynchronní operace jsou povoleny během částí zpracování ASP.NET žádosti, 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 týkají asynchronního preload režimu.

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 označující 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 požadavek je AspNetWebSocket 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

IHttpHandler Získá objekt pro nadřazenou obslužnou 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 objekt má 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() ve vlákně, 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

Name Description
AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>, AspNetWebSocketOptions)

AspNetWebSocket Přijme požadavek pomocí zadané funkce uživatele a objektu možností.

AcceptWebSocketRequest(Func<AspNetWebSocketContext,Task>)

AspNetWebSocket Přijme požadavek pomocí zadané funkce uživatele.

AddError(Exception)

Přidá výjimku do kolekce výjimek pro aktuální požadavek HTTP.

AddOnRequestCompleted(Action<HttpContext>)

Vyvolá virtuální událost, která nastane při ukončení části požadavku HTTP.

ClearError()

Vymaže všechny chyby aktuálního požadavku HTTP.

DisposeOnPipelineCompleted(IDisposable)

Umožňuje volat metodu Dispose() objektu při AspNetWebSocket dokončení připojení části tohoto požadavku.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetAppConfig(String)
Zastaralé.

Vrátí požadované informace o konfiguraci pro aktuální aplikaci.

GetConfig(String)
Zastaralé.

Vrátí požadované informace o konfiguraci pro aktuální požadavek HTTP.

GetGlobalResourceObject(String, String, CultureInfo)

Získá objekt prostředku na úrovni aplikace na základě zadaných ClassKey a ResourceKey vlastností a objektu CultureInfo .

GetGlobalResourceObject(String, String)

Získá objekt prostředku na úrovni aplikace na základě zadaných ClassKey a ResourceKey vlastností.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetLocalResourceObject(String, String, CultureInfo)

Získá objekt prostředku na úrovni stránky na základě zadaných VirtualPath a ResourceKey vlastností a objektu CultureInfo .

GetLocalResourceObject(String, String)

Získá objekt prostředku na úrovni stránky na základě zadaných VirtualPath a ResourceKey vlastností.

GetSection(String)

Získá zadaný oddíl konfigurace pro výchozí konfiguraci aktuální aplikace.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
RemapHandler(IHttpHandler)

Umožňuje zadat obslužnou rutinu požadavku.

RewritePath(String, Boolean)

Přepíše adresu URL pomocí dané cesty a logické hodnoty, která určuje, zda je virtuální cesta pro prostředky serveru upravena.

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í.

RewritePath(String, String, String)

Přepíše adresu URL pomocí dané cesty, informací o cestě a informací o řetězci dotazu.

RewritePath(String)

Přepíše adresu URL pomocí dané cesty.

SetSessionStateBehavior(SessionStateBehavior)

Nastaví typ chování stavu relace, které je vyžadováno pro podporu požadavku HTTP.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
IServiceProvider.GetService(Type)

Vrátí objekt pro aktuální typ služby.

Platí pro

Viz také