(0) exportieren Drucken
Alle erweitern

WebRequest-Klasse

Aktualisiert: November 2007

Fordert einen URI (Uniform Resource Identifier) an. Dies ist eine abstract Klasse.

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

[SerializableAttribute]
public abstract class WebRequest : MarshalByRefObject, 
	ISerializable
/** @attribute SerializableAttribute */ 
public abstract class WebRequest extends MarshalByRefObject implements ISerializable
public abstract class WebRequest extends MarshalByRefObject implements ISerializable

WebRequest ist die abstract Basisklasse des Anforderungs-/Antwortmodells von .NET Framework für den Zugriff auf Daten im Internet. Eine Anwendung, die das Anforderungs-/Antwortmodell verwendet, kann protokollunabhängig Daten aus dem Internet anfordern. Hierbei werden von der Anwendung Instanzen der WebRequest-Klasse verwendet, während protokollspezifische Nachfolgerklassen die Details der Anforderung ausführen.

Anforderungen werden von einer Anwendung an einen bestimmten URI gesendet, z. B. an eine Webseite auf einem Server. Der URI bestimmt, welche Nachfolgerklasse aus einer Liste der für die Anwendung registrierten WebRequest-Nachfolgerklassen erstellt wird. WebRequest-Nachfolgerklassen werden i. d. R. für die Behandlung eines bestimmten Protokolls registriert, z. B. HTTP oder FTP, können jedoch auch für die Behandlung der Anforderung eines bestimmten Servers oder eines Pfades auf einem Server registriert werden.

Die WebRequest-Klasse löst eine WebException aus, wenn beim Zugriff auf eine Internetressource Fehler auftreten. Die Status-Eigenschaft ist einer der WebExceptionStatus-Werte, die die Fehlerquelle angeben. Wenn Status auf WebExceptionStatus.ProtocolError festgelegt ist, enthält die Response-Eigenschaft die aus der Internetressource empfangene WebResponse.

Da die WebRequest-Klasse eine abstract Klasse ist, wird das tatsächliche Verhalten der WebRequest-Instanzen zur Laufzeit von der Nachfolgerklasse bestimmt, die von der Create-Methode zurückgegeben wird. Weitere Informationen über Standardwerte und Ausnahmen finden Sie in der Dokumentation zu den Nachfolgerklassen, z. B. HttpWebRequest und FileWebRequest.

5t9y35bd.alert_note(de-de,VS.90).gifHinweis:

Verwenden Sie zum Initialisieren von neuen WebRequest-Instanzen die Create-Methode. Verwenden Sie nicht den WebRequest-Konstruktor.

5t9y35bd.alert_note(de-de,VS.90).gifHinweis:

Wenn die Anwendung, die das WebRequest-Objekt erstellt, mit den Anmeldeinformationen eines Standardbenutzers ausgeführt wird, kann die Anwendung nicht auf Zertifikate zugreifen, die im Speicher des lokalen Computers installiert sind, es sei denn, die entsprechende Berechtigung wurde dem Benutzer explizit erteilt.

Hinweise zur Vererbung:

Wenn Sie WebRequest vererben, müssen Sie die folgenden Member überschreiben: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream, BeginGetRequestStream, EndGetRequestStream, GetResponse, BeginGetResponse und EndGetResponse. Außerdem muss eine Implementierung der IWebRequestCreate-Schnittstelle bereitgestellt werden, die die Create-Methode definiert, die beim Aufruf von Create verwendet wird. Die Klasse, die die IWebRequestCreate-Schnittstelle implementiert, muss mithilfe der RegisterPrefix-Methode oder der Konfigurationsdatei registriert werden.

Im folgenden Beispiel wird veranschaulicht, wie eine WebRequest-Instanz erstellt und die Antwort zurückgegeben wird.

using System;
using System.IO;
using System.Net;
using System.Text;

namespace Examples.System.Net
{
    public class WebRequestGetExample
    {
        public static void Main ()
        {
            // Create a request for the URL. 		
            WebRequest request = WebRequest.Create ("http://www.contoso.com/default.html");
            // If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
            // Get the response.
            HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
            // Display the status.
            Console.WriteLine (response.StatusDescription);
            // Get the stream containing content returned by the server.
            Stream dataStream = response.GetResponseStream ();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader (dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd ();
            // Display the content.
            Console.WriteLine (responseFromServer);
            // Cleanup the streams and the response.
            reader.Close ();
            dataStream.Close ();
            response.Close ();
        }
    }
}


  • WebPermission 

    für den Zugriff auf den angeforderten URI oder einen URI, zu dem die Anforderung umgeleitet wurde. Zugeordnete Enumeration: Connect

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile für Smartphone, Windows Mobile für Pocket PC

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 3.5, 2.0, 1.0

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2014 Microsoft