HttpRequest Klasse
TOC
Inhaltsverzeichnis reduzieren
Inhaltsverzeichnis erweitern
Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

HttpRequest-Klasse

 

Ermöglicht es ASP.NET, die von einem Client bei einer Webanforderung gesendeten HTTP-Werte zu lesen.

Namespace:   System.Web
Assembly:  System.Web (in System.Web.dll)

System.Object
  System.Web.HttpRequest

public sealed class HttpRequest

NameBeschreibung
System_CAPS_pubmethodHttpRequest(String, String, String)

Diese API unterstützt die producto-Infrastruktur und sollte nicht direkt aus Ihrem Code verwendet werden. Initialisiert ein HttpRequest-Objekt.

NameBeschreibung
System_CAPS_pubpropertyAcceptTypes

Ruft ein Zeichenfolgenarray der vom Client unterstützten MIME-Accept-Typen ab.

System_CAPS_pubpropertyAnonymousID

Ruft den anonymen Bezeichner für den Benutzer ab, sofern vorhanden.

System_CAPS_pubpropertyApplicationPath

Ruft den virtuellen Pfad des Anwendungsstamms der ASP.NET-Anwendung auf dem Server ab.

System_CAPS_pubpropertyAppRelativeCurrentExecutionFilePath

Ruft den virtuellen Pfad des Anwendungsstamms ab und wandelt diesen mithilfe der Tildennotation (~) in einen relativen Pfad um (z. B. „~/Seite.aspx“).

System_CAPS_pubpropertyBrowser

Ruft Informationen über die Browserfunktionen des Clients ab, der die Anforderung gesendet hat, oder legt diese fest.

System_CAPS_pubpropertyClientCertificate

Ruft das Clientsicherheitszertifikat der aktuellen Anforderung ab.

System_CAPS_pubpropertyContentEncoding

Ruft den Zeichensatz des Einheitstextkörpers ab oder legt diesen fest.

System_CAPS_pubpropertyContentLength

Gibt die Länge des vom Client gesendeten Inhalts in Bytes an.

System_CAPS_pubpropertyContentType

Ruft den MIME-Inhaltstyp der eingehenden Anforderung ab oder legt diesen fest.

System_CAPS_pubpropertyCookies

Ruft eine Auflistung der vom Client gesendeten Cookies ab.

System_CAPS_pubpropertyCurrentExecutionFilePath

Ruft den virtuellen Pfad der aktuellen Anforderung ab.

System_CAPS_pubpropertyCurrentExecutionFilePathExtension

Ruft die Erweiterung des Dateinamens ab, die in der CurrentExecutionFilePath-Eigenschaft angegeben wird.

System_CAPS_pubpropertyFilePath

Ruft den virtuellen Pfad der aktuellen Anforderung ab.

System_CAPS_pubpropertyFiles

Ruft die Auflistung der vom Client hochgeladenen Dateien im MIME-Multipart-Format ab.

System_CAPS_pubpropertyFilter

Ruft den Filter ab, der beim Lesen des aktuellen Eingabestreams verwendet werden soll, oder legt diesen fest.

System_CAPS_pubpropertyForm

Ruft eine Auflistung von Formularvariablen ab.

System_CAPS_pubpropertyHeaders

Ruft eine Auflistung von HTTP-Headern ab.

System_CAPS_pubpropertyHttpChannelBinding

Ruft das ChannelBinding-Objekt der aktuellen HttpWorkerRequest-Instanz ab.

System_CAPS_pubpropertyHttpMethod

Ruft die vom Client verwendete HTTP-Datenübertragungsmethode ab, z. B. GET, POST oder HEAD.

System_CAPS_pubpropertyInputStream

Ruft den Inhalt des eingehenden HTTP-Einheitstextkörpers ab.

System_CAPS_pubpropertyIsAuthenticated

Ruft einen Wert ab, der angibt, ob die Anforderung authentifiziert wurde.

System_CAPS_pubpropertyIsLocal

Ruft einen Wert ab, der angibt, ob die Anforderung vom lokalen Computer stammt.

System_CAPS_pubpropertyIsSecureConnection

Ruft einen Wert ab, der angibt, ob bei der HTTP-Verbindung Secure Sockets, d. h. HTTPS, verwendet wird.

System_CAPS_pubpropertyItem[String]

Ruft das angegebene Objekt aus den QueryString-, Form-, Cookies- oder ServerVariables-Auflistungen ab.

System_CAPS_pubpropertyLogonUserIdentity

Ruft den WindowsIdentity-Typ für den aktuellen Benutzer ab.

System_CAPS_pubpropertyParams

Ruft eine kombinierte Auflistung der Elemente QueryString, Form, Cookies und ServerVariables ab.

System_CAPS_pubpropertyPath

Ruft den virtuellen Pfad der aktuellen Anforderung ab.

System_CAPS_pubpropertyPathInfo

Ruft die zusätzlichen Pfadinformationen für eine Ressource mit einer URL-Erweiterung ab.

System_CAPS_pubpropertyPhysicalApplicationPath

Ruft den physischen Dateisystempfad für das Stammverzeichnis der gegenwärtig ausgeführten Serveranwendung ab.

System_CAPS_pubpropertyPhysicalPath

Ruft den physischen Dateisystempfad entsprechend der angeforderten URL ab.

System_CAPS_pubpropertyQueryString

Ruft die Auflistung von Zeichenfolgenvariablen für HTTP-Abfragen ab.

System_CAPS_pubpropertyRawUrl

Ruft die Basis-URL der aktuellen Anforderung ab.

System_CAPS_pubpropertyReadEntityBodyMode

Ruft einen Wert ab, der angibt, ob der Text der Anforderungsentität gelesen wurde, und wenn ja, wie er gelesen wurde.

System_CAPS_pubpropertyRequestContext

Ruft die RequestContext-Instanz der aktuellen Anforderung ab.

System_CAPS_pubpropertyRequestType

Ruft die vom Client verwendete HTTP-Datenübertragungsmethode ab (GET oder POST) oder legt diese fest.

System_CAPS_pubpropertyServerVariables

Ruft eine Auflistung von Webservervariablen ab.

System_CAPS_pubpropertyTimedOutToken

Ruft ein CancellationToken-Objekt ab, das aktiviert wird, wenn eine Anforderung abgelaufen ist.

System_CAPS_pubpropertyTlsTokenBindingInfo

Ruft die TLS-Token-Bindungsinformationen ab. Die Eigenschaft ermöglicht Anwendungen das Abrufen von Tokeninformationen aus eingehenden HTTP-Anfragen zur erweiterten Authentifizierung.

System_CAPS_pubpropertyTotalBytes

Ruft die Anzahl der Bytes im aktuellen Eingabestream ab.

System_CAPS_pubpropertyUnvalidated

Ruft die HTTP-Anforderungswerte ab, ohne die Anforderungsvalidierung auszulösen.

System_CAPS_pubpropertyUrl

Ruft Informationen über die URL der aktuellen Anforderung ab.

System_CAPS_pubpropertyUrlReferrer

Ruft Informationen zur URL der vorhergehenden Anforderung des Clients ab, die mit der aktuellen URL verknüpft ist.

System_CAPS_pubpropertyUserAgent

Ruft die unformatierte User-Agent-Zeichenfolge des Clientbrowsers ab.

System_CAPS_pubpropertyUserHostAddress

Ruft die IP-Hostadresse des Remoteclients ab.

System_CAPS_pubpropertyUserHostName

Ruft den DNS-Namen des Remoteclients ab.

System_CAPS_pubpropertyUserLanguages

Ruft ein sortiertes Zeichenfolgenarray mit Clientspracheinstellungen ab.

NameBeschreibung
System_CAPS_pubmethodAbort()

Erzwingt das Beenden der zugrunde liegenden TCP-Verbindung, woraufhin alle ausstehenden E/A-Vorgänge fehlschlagen. Sie können diese Methode als Reaktion auf einen Angriff von einem böswilligen HTTP-Client verwenden.

System_CAPS_pubmethodBinaryRead(Int32)

Führt einen binären Lesevorgang einer angegebenen Anzahl von Bytes aus dem aktuellen Eingabestream durch.

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von Object.)

System_CAPS_pubmethodGetBufferedInputStream()

Ruft ein Stream-Objekt ab, das zum Lesen des eingehenden HTTP-Einheitstextkörpers verwendet werden kann.

System_CAPS_pubmethodGetBufferlessInputStream()

Ruft ein Stream-Objekt ab, das zum Lesen des eingehenden HTTP-Einheitstextkörpers verwendet werden kann.

System_CAPS_pubmethodGetBufferlessInputStream(Boolean)

Ruft ein Stream-Objekt ab, das verwendet werden kann, um den eingehenden HTTP-Einheitstextkörper zu lesen, wobei optional die Anforderungslängenbegrenzung deaktiviert wird, die in der MaxRequestLength-Eigenschaft festgesetzt ist.

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von Object.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von Object.)

System_CAPS_pubmethodInsertEntityBody()

Stellt für IIS eine Kopie des HTTP-Anforderungs-Einheitstextkörpers bereit.

System_CAPS_pubmethodInsertEntityBody(Byte[], Int32, Int32)

Stellt für IIS eine Kopie des HTTP-Anforderungs-Einheitstextkörpers und Informationen zum Anforderungsentitätsobjekt bereit.

System_CAPS_pubmethodMapImageCoordinates(String)

Ordnet einen eingehenden Formularparameter für ein Bildfeld den entsprechenden x- und y-Koordinatenwerten zu.

System_CAPS_pubmethodMapPath(String)

Ordnet einem physischen Pfad den angegebenen virtuellen Pfad zu.

System_CAPS_pubmethodMapPath(String, String, Boolean)

Ordnet einem physischen Pfad den angegebenen virtuellen Pfad zu.

System_CAPS_pubmethodMapRawImageCoordinates(String)

Ordnet einen eingehenden Formularparameter für ein Bildfeld den entsprechenden x- und y-Koordinatenwerten zu.

System_CAPS_pubmethodSaveAs(String, Boolean)

Speichert eine HTTP-Anforderung auf dem Datenträger.

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von Object.)

System_CAPS_pubmethodValidateInput()

Bewirkt Validierung für die Auflistungen, auf die über die Eigenschaften Cookies, Form und QueryString zugegriffen wird.

Die Methoden und Eigenschaften der HttpRequest Klasse durch verfügbar gemacht werden die Request Eigenschaften der HttpApplication, HttpContext, Page, und UserControl Klassen.

Zugriff auf Daten aus der QueryString, Form, Cookies, oder ServerVariables -Auflistungen, die Sie schreiben Request["key"], wie im Beispiel für die QueryString Eigenschaft.

System_CAPS_noteHinweis

Unicode-Unterstützung für HttpRequest Klassenmember erfordert IIS Version 6.0 oder höher.

Die folgenden Beispiele bestimmen die HttpRequest-Instanz des aktuellen Requests über die Request -Eigenschaft der Page Klasse.

Sie können vereinfachten Syntax für den Zugriff auf Daten aus der QueryString, Form, Cookies, oder ServerVariables Sammlungen. Sie können schreiben Request["key"].

Das erste Beispiel zeigt, wie einen Wert der Abfragezeichenfolge abgerufen, beim Laden einer Seite.

public partial class AddToCart : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string rawId = Request["ProductID"];
        int productId;
        if (!String.IsNullOrEmpty(rawId) && int.TryParse(rawId, out productId))
        {
            using (ShoppingCartActions usersShoppingCart = new ShoppingCartActions())
            {
                usersShoppingCart.AddToCart(productId);
            }
        }
        else
        {
            throw new Exception("Tried to call AddToCart.aspx without setting a ProductId.");
        }
        Response.Redirect("ShoppingCart.aspx");
    }
}

Im nächsten Beispiel wird veranschaulicht, wie überprüfen, ob die Anforderung authentifiziert wurde und die Basis-URL abzurufen.

public partial class RestrictedPage : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Request.IsAuthenticated)
        {
            var rawUrl = Request.RawUrl;
            Response.Redirect("/Account/Login?ru=" + Server.HtmlEncode(rawUrl));
        }
    }
}

Ist ein Visual Studio Web Site-Projekt mit Quellcode zur Ergänzung dieses Themas verfügbar: Download.

Dieses Beispiel verwendet die StreamWriter Klasse, um die Werte von mehreren schreiben HttpRequest Klasse Eigenschaften in einer Datei. Für Eigenschaften, die vom Typzeichenfolge sind, sind die Werte HTML-codiert, wie sie in die Datei geschrieben werden. Eigenschaften, die eine Auflistung darstellen, werden durchlaufen, und jedes Schlüssel-Wert-Paar in die Datei geschrieben wird.

System_CAPS_security Sicherheit Hinweis

Dieses Beispiel umfasst ein Textfeld, das Benutzereingaben akzeptiert, die ein potenzielles Sicherheitsrisiko darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Script Exploits Overview.

<%@ Page Language="C#" %>
<%@ import Namespace="System.Threading" %>
<%@ import Namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    /* NOTE: To use this sample, create a c:\temp\CS folder,
    *  add the ASP.NET account (in IIS 5.x <machinename>\ASPNET,
    *  in IIS 6.x NETWORK SERVICE), and give it write permissions
    *  to the folder.*/

    private const string INFO_DIR = @"c:\temp\CS\RequestDetails";
    public static int requestCount;

    private void Page_Load(object sender, System.EventArgs e)
    {

        // Create a variable to use when iterating
        // through the UserLanguages property.
        int langCount;

        int requestNumber = Interlocked.Increment(ref requestCount);

        // Create the file to contain information about the request.
        string strFilePath = INFO_DIR + requestNumber.ToString() + @".txt";


        StreamWriter sw = File.CreateText(strFilePath);

        try
        {
            // Write request information to the file with HTML encoding.
            sw.WriteLine(Server.HtmlEncode(DateTime.Now.ToString()));
            sw.WriteLine(Server.HtmlEncode(Request.CurrentExecutionFilePath));
            sw.WriteLine(Server.HtmlEncode(Request.ApplicationPath));
            sw.WriteLine(Server.HtmlEncode(Request.FilePath));
            sw.WriteLine(Server.HtmlEncode(Request.Path));

            // Iterate through the Form collection and write
            // the values to the file with HTML encoding.
            // String[] formArray = Request.Form.AllKeys;
            foreach (string s in Request.Form)
            {
                sw.WriteLine("Form: " + Server.HtmlEncode(s));
            }

            // Write the PathInfo property value
            // or a string if it is empty.
            if (Request.PathInfo == String.Empty)
            {
                sw.WriteLine("The PathInfo property contains no information.");
            }
            else
            {
                sw.WriteLine(Server.HtmlEncode(Request.PathInfo));
            }

            // Write request information to the file with HTML encoding.
            sw.WriteLine(Server.HtmlEncode(Request.PhysicalApplicationPath));
            sw.WriteLine(Server.HtmlEncode(Request.PhysicalPath));
            sw.WriteLine(Server.HtmlEncode(Request.RawUrl));

            // Write a message to the file dependent upon
            // the value of the TotalBytes property.
            if (Request.TotalBytes > 1000)
            {
                sw.WriteLine("The request is 1KB or greater");
            }
            else
            {
                sw.WriteLine("The request is less than 1KB");
            }

            // Write request information to the file with HTML encoding.
            sw.WriteLine(Server.HtmlEncode(Request.RequestType));
            sw.WriteLine(Server.HtmlEncode(Request.UserHostAddress));
            sw.WriteLine(Server.HtmlEncode(Request.UserHostName));
            sw.WriteLine(Server.HtmlEncode(Request.HttpMethod));

            // Iterate through the UserLanguages collection and
            // write its HTML encoded values to the file.
            for (langCount=0; langCount < Request.UserLanguages.Length; langCount++)
            {
                sw.WriteLine(@"User Language " + langCount +": " + Server.HtmlEncode(Request.UserLanguages[langCount]));
            }
       }

       finally
       {
            // Close the stream to the file.
            sw.Close();
       }

        lblInfoSent.Text = "Information about this request has been sent to a file.";
    }


    private void btnSendInfo_Click(object sender, System.EventArgs e)
    {
        lblInfoSent.Text = "Hello, " + Server.HtmlEncode(txtBoxName.Text) +
          ". You have created a new  request info file.";
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
        <p>
        </p>
        <p>
            Enter your name here:
            <asp:TextBox id="txtBoxName" runat="server"></asp:TextBox>
        </p>
        <p>
            <asp:Button id="btnSendInfo" onclick="btnSendInfo_Click" runat="server" Text="Click Here"></asp:Button>
        </p>
        <p>
            <asp:Label id="lblInfoSent" runat="server"></asp:Label>
        </p>
    </form>
</body>
</html>

.NET Framework
Verfügbar seit 1.1

Öffentliche statische (in Visual Basic freigegebene) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Zurück zum Anfang
Anzeigen:
© 2016 Microsoft