Teilen über


WebRequest Klasse

Definition

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

public ref class WebRequest abstract
public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class WebRequest
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
[System.Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
[<System.Serializable>]
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class WebRequest
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
Vererbung
WebRequest
Vererbung
Abgeleitet
Attribute
Implementiert

Beispiele

Das folgende Beispiel zeigt, wie Sie eine WebRequest Instanz erstellen und die Antwort zurückgeben.

#using <System.dll>

using namespace System;
using namespace System::IO;
using namespace System::Net;
using namespace System::Text;
int 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 = dynamic_cast<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 = gcnew 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();
}
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 ();
        }
    }
}
Imports System.IO
Imports System.Net
Imports System.Text

Namespace Examples.System.Net
    Public Class WebRequestGetExample

        Public Shared Sub Main()
            ' Create a request for the URL. 		
            Dim request As WebRequest = WebRequest.Create("http://www.contoso.com/default.html")
            ' If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials
            ' Get the response.
            Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
            ' Display the status.
            Console.WriteLine(response.StatusDescription)
            ' Get the stream containing content returned by the server.
            Dim dataStream As Stream = response.GetResponseStream()
            ' Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(dataStream)
            ' Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            ' Display the content.
            Console.WriteLine(responseFromServer)
            ' Cleanup the streams and the response.
            reader.Close()
            dataStream.Close()
            response.Close()
        End Sub
    End Class
End Namespace

Hinweise

Vorsicht

WebRequest, HttpWebRequest, ServicePointund WebClient sind veraltet, und Sie sollten sie nicht für die neue Entwicklung verwenden. Verwenden Sie stattdessen HttpClient.

WebRequest ist die abstract Basisklasse für . Das Anforderungs-/Antwortmodell von NET für den Zugriff auf Daten aus dem Internet. Eine Anwendung, die das Anforderungs-/Antwortmodell verwendet, kann Daten aus dem Internet protokollagnostisch anfordern, in der die Anwendung mit Instanzen der WebRequest Klasse arbeitet, während protokollspezifische untergeordnete Klassen die Details der Anforderung ausführen.

Anforderungen werden von einer Anwendung an einen bestimmten URI gesendet, z. B. eine Webseite auf einem Server. Der URI bestimmt die richtige absteigende Klasse, die aus einer Liste von WebRequest untergeordneten Elementen erstellt werden soll, die für die Anwendung registriert sind. WebRequest Untergeordneten werden in der Regel registriert, um ein bestimmtes Protokoll wie HTTP oder FTP zu verarbeiten, kann jedoch registriert werden, um eine Anforderung an einen bestimmten Server oder Pfad auf einem Server zu verarbeiten.

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 Quelle des Fehlers angibt. Wenn StatusWebExceptionStatus.ProtocolErrorist, enthält die Response-Eigenschaft die von der Internetressource empfangenen WebResponse.

Da es sich bei der WebRequest-Klasse um eine abstract Klasse handelt, wird das tatsächliche Verhalten WebRequest Instanzen zur Laufzeit durch die von Create Methode zurückgegebene absteigende Klasse bestimmt. Weitere Informationen zu Standardwerten und Ausnahmen finden Sie in der Dokumentation für die untergeordneten Klassen, z. B. HttpWebRequest und FileWebRequest.

Anmerkung

Verwenden Sie die Create Methode, um neue WebRequest Instanzen zu initialisieren. Verwenden Sie nicht den WebRequest-Konstruktor.

Anmerkung

Wenn die Anwendung, die das WebRequest-Objekt erstellt, mit den Anmeldeinformationen eines Normalen Benutzers ausgeführt wird, kann die Anwendung nicht auf zertifikate zugreifen, die im lokalen Computerspeicher installiert sind, es sei denn, dem Benutzer wurde explizit die Entsprechende Berechtigung erteilt.

Hinweise für Ausführende

Wenn Sie von WebRequesterben, müssen Sie die folgenden Member außer Kraft setzen: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult), GetResponse(), BeginGetResponse(AsyncCallback, Object)und EndGetResponse(IAsyncResult). Darüber hinaus müssen Sie eine Implementierung der IWebRequestCreate-Schnittstelle bereitstellen, die die Create(Uri) Methode definiert, die beim Aufrufen von Create(Uri)verwendet wird. Sie müssen die Klasse registrieren, die die IWebRequestCreate Schnittstelle implementiert, indem Sie die RegisterPrefix(String, IWebRequestCreate) Methode oder die Konfigurationsdatei verwenden.

Konstruktoren

WebRequest()
Veraltet.

Initialisiert eine neue Instanz der WebRequest Klasse.

WebRequest(SerializationInfo, StreamingContext)
Veraltet.

Initialisiert eine neue Instanz der WebRequest Klasse aus den angegebenen Instanzen der klassen SerializationInfo und StreamingContext.

Eigenschaften

AuthenticationLevel

Dient zum Abrufen oder Festlegen von Werten, die die Ebene der Authentifizierung und des Identitätswechsels für diese Anforderung angeben.

CachePolicy

Dient zum Abrufen oder Festlegen der Cacherichtlinie für diese Anforderung.

ConnectionGroupName

Wenn sie in einer untergeordneten Klasse überschrieben werden, ruft den Namen der Verbindungsgruppe für die Anforderung ab oder legt sie fest.

ContentLength

Wenn sie in einer untergeordneten Klasse überschrieben werden, ruft die Inhaltslänge der gesendeten Anforderungsdaten ab oder legt sie fest.

ContentType

Wenn sie in einer untergeordneten Klasse überschrieben werden, ruft den Inhaltstyp der gesendeten Anforderungsdaten ab oder legt ihn fest.

CreatorInstance
Veraltet.

Wenn eine absteigende Klasse überschrieben wird, ruft das Factoryobjekt ab, das von der IWebRequestCreate Klasse abgeleitet wird, mit der die WebRequest instanziiert werden, um die Anforderung an den angegebenen URI zu senden.

Credentials

Wenn sie in einer untergeordneten Klasse überschrieben werden, werden die Netzwerkanmeldeinformationen abgerufen oder festgelegt, die zum Authentifizieren der Anforderung mit der Internetressource verwendet werden.

DefaultCachePolicy

Dient zum Abrufen oder Festlegen der Standardcacherichtlinie für diese Anforderung.

DefaultWebProxy

Dient zum Abrufen oder Festlegen des globalen HTTP-Proxys.

Headers

Wenn eine absteigende Klasse überschrieben wird, ruft die Auflistung der Headernamen-Wert-Paare ab, die der Anforderung zugeordnet sind, oder legt diese fest.

ImpersonationLevel

Dient zum Abrufen oder Festlegen der Identitätswechselebene für die aktuelle Anforderung.

Method

Wenn sie in einer absteigenden Klasse außer Kraft gesetzt wird, ruft die in dieser Anforderung zu verwendende Protokollmethode ab oder legt sie fest.

PreAuthenticate

Wenn sie in einer untergeordneten Klasse überschrieben wird, gibt sie an, ob die Anforderung vorab authentifiziert werden soll.

Proxy

Ruft den Netzwerkproxy ab, der für den Zugriff auf diese Internetressource verwendet werden soll, oder legt diesen fest, wenn er in einer untergeordneten Klasse überschrieben wird.

RequestUri

Wenn sie in einer absteigenden Klasse überschrieben wird, ruft der URI der Internetressource ab, die der Anforderung zugeordnet ist.

Timeout

Ruft die Zeitdauer in Millisekunden ab, bevor die Anforderung timeout ist, oder legt diese fest.

UseDefaultCredentials

Wenn eine absteigende Klasse überschrieben wird, wird ein Boolean Wert abgerufen oder festgelegt, der steuert, ob DefaultCredentials mit Anforderungen gesendet werden.

Methoden

Abort()

Bricht die Anforderung ab.

BeginGetRequestStream(AsyncCallback, Object)

Wenn eine absteigende Klasse überschrieben wird, wird eine asynchrone Version der GetRequestStream()-Methode bereitgestellt.

BeginGetResponse(AsyncCallback, Object)

Wenn sie in einer untergeordneten Klasse überschrieben wird, beginnt eine asynchrone Anforderung für eine Internetressource.

Create(String)
Veraltet.

Initialisiert eine neue WebRequest Instanz für das angegebene URI-Schema.

Create(Uri)
Veraltet.

Initialisiert eine neue WebRequest Instanz für das angegebene URI-Schema.

CreateDefault(Uri)
Veraltet.

Initialisiert eine neue WebRequest Instanz für das angegebene URI-Schema.

CreateHttp(String)
Veraltet.

Initialisiert eine neue HttpWebRequest Instanz für die angegebene URI-Zeichenfolge.

CreateHttp(Uri)
Veraltet.

Initialisiert eine neue HttpWebRequest Instanz für den angegebenen URI.

CreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen enthält, die zum Generieren eines Proxys erforderlich sind, der für die Kommunikation mit einem Remoteobjekt verwendet wird.

(Geerbt von MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

Wenn sie in einer untergeordneten Klasse überschrieben wird, wird ein Stream zum Schreiben von Daten in die Internetressource zurückgegeben.

EndGetResponse(IAsyncResult)

Wenn sie in einer untergeordneten Klasse überschrieben wird, wird ein WebResponsezurückgegeben.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinie für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Veraltet.

Füllt eine SerializationInfo mit den daten auf, die zum Serialisieren des Zielobjekts erforderlich sind.

GetRequestStream()

Wenn sie in einer untergeordneten Klasse überschrieben wird, wird ein Stream zum Schreiben von Daten in die Internetressource zurückgegeben.

GetRequestStreamAsync()

Wenn eine absteigende Klasse überschrieben wird, wird ein Stream zum Schreiben von Daten in die Internetressource als asynchroner Vorgang zurückgegeben.

GetResponse()

Wenn sie in einer untergeordneten Klasse überschrieben wird, wird eine Antwort auf eine Internetanforderung zurückgegeben.

GetResponseAsync()

Wenn eine absteigende Klasse außer Kraft gesetzt wird, wird eine Antwort auf eine Internetanforderung als asynchroner Vorgang zurückgegeben.

GetSystemWebProxy()

Gibt einen Proxy zurück, der mit den Internetoptioneneinstellungen des aktuell imitierten Benutzers konfiguriert ist.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt ab, um die Lebensdauerrichtlinie für diese Instanz zu steuern.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.

(Geerbt von MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)
Veraltet.

Registrieren sie ein IWebRequestCreate-Objekt.

RegisterPrefix(String, IWebRequestCreate)

Registriert ein WebRequest untergeordnetes Element für den angegebenen URI.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Veraltet.

Wenn sie in einer untergeordneten Klasse überschrieben wird, füllen Sie eine SerializationInfo Instanz mit den Daten auf, die zum Serialisieren der WebRequesterforderlich sind.

Gilt für:

Weitere Informationen