WebRequest Klasa

Definicja

Wysyła żądanie do identyfikatora URI (Uniform Resource Identifier). Jest to abstract klasa.

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
Dziedziczenie
WebRequest
Dziedziczenie
Pochodne
Atrybuty
Implementuje

Przykłady

W poniższym przykładzie pokazano, jak utworzyć WebRequest wystąpienie i zwrócić odpowiedź.

#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

Uwagi

Ważne

Nie należy używać WebRequest ani jej klas pochodnych na potrzeby nowego programowania. Zamiast tego użyj System.Net.Http.HttpClient klasy .

WebRequest jest klasą bazową abstract dla klasy . Model żądania/odpowiedzi platformy NET na potrzeby uzyskiwania dostępu do danych z Internetu. Aplikacja korzystająca z modelu żądań/odpowiedzi może żądać danych z Internetu w sposób niezależna od protokołu, w którym aplikacja współpracuje z wystąpieniami WebRequest klasy, podczas gdy klasy potomne specyficzne dla protokołu wykonują szczegóły żądania.

Żądania są wysyłane z aplikacji do określonego identyfikatora URI, takiego jak strona sieci Web na serwerze. Identyfikator URI określa właściwą klasę potomną do utworzenia na podstawie listy obiektów podrzędnych zarejestrowanych WebRequest dla aplikacji. WebRequest obiekty podrzędne są zwykle rejestrowane w celu obsługi określonego protokołu, takiego jak HTTP lub FTP, ale można je zarejestrować w celu obsługi żądania do określonego serwera lub ścieżki na serwerze.

Klasa WebRequest zgłasza WebException błąd występujący podczas uzyskiwania dostępu do zasobu internetowego. Właściwość Status jest jedną z WebExceptionStatus wartości wskazujących źródło błędu. Gdy Status parametr ma WebExceptionStatus.ProtocolErrorwartość , Response właściwość zawiera odebrane WebResponse z zasobu internetowego.

WebRequest Ponieważ klasa jest klasąabstract, rzeczywiste zachowanie WebRequest wystąpień w czasie wykonywania jest określane przez klasę potomną zwracaną przez Create metodę. Aby uzyskać więcej informacji na temat wartości domyślnych i wyjątków, zobacz dokumentację dla klas potomnych, takich jak HttpWebRequest i FileWebRequest.

Uwaga

Create Użyj metody , aby zainicjować nowe WebRequest wystąpienia. Nie używaj konstruktora WebRequest .

Uwaga

Jeśli aplikacja, która tworzy obiekt WebRequest, zostanie uruchomiona z poświadczeniami normalnego użytkownika, aplikacja nie będzie mogła uzyskać dostępu do certyfikatów zainstalowanych w magazynie komputera lokalnego, chyba że użytkownikowi jawnie nadano to uprawnienie.

Uwagi dotyczące implementowania

Podczas dziedziczenia z WebRequestelementu należy zastąpić następujące elementy członkowskie: Method, RequestUri, ContentLengthCredentialsPreAuthenticateGetRequestStream()ContentTypeHeadersEndGetRequestStream(IAsyncResult)GetResponse()BeginGetRequestStream(AsyncCallback, Object)BeginGetResponse(AsyncCallback, Object)i .EndGetResponse(IAsyncResult) Ponadto należy podać implementację interfejsu IWebRequestCreate , który definiuje Create(Uri) metodę używaną podczas wywoływania Create(Uri)metody . Należy zarejestrować klasę, która implementuje IWebRequestCreate interfejs przy użyciu RegisterPrefix(String, IWebRequestCreate) metody lub pliku konfiguracji.

Konstruktory

WebRequest()
Przestarzałe.

Inicjuje nowe wystąpienie klasy WebRequest.

WebRequest(SerializationInfo, StreamingContext)
Przestarzałe.

Inicjuje nowe wystąpienie WebRequest klasy z określonych wystąpień SerializationInfo klas i StreamingContext .

Właściwości

AuthenticationLevel

Pobiera lub ustawia wartości wskazujące poziom uwierzytelniania i personifikacji używane dla tego żądania.

CachePolicy

Pobiera lub ustawia zasady pamięci podręcznej dla tego żądania.

ConnectionGroupName

Po zastąpieniu w klasie potomnej pobiera lub ustawia nazwę grupy połączeń dla żądania.

ContentLength

Po przesłonięciu w klasie potomnej pobiera lub ustawia długość zawartości wysyłanych danych żądania.

ContentType

Po zastąpieniu w klasie potomnej pobiera lub ustawia typ zawartości wysyłanych danych żądania.

CreatorInstance
Przestarzałe.

Po zastąpieniu w klasie potomnej pobiera obiekt fabryki pochodzący z IWebRequestCreate klasy użytej do utworzenia WebRequest wystąpienia żądania do określonego identyfikatora URI.

Credentials

Po zastąpieniu w klasie potomnej pobiera lub ustawia poświadczenia sieciowe używane do uwierzytelniania żądania za pomocą zasobu internetowego.

DefaultCachePolicy

Pobiera lub ustawia domyślne zasady pamięci podręcznej dla tego żądania.

DefaultWebProxy

Pobiera lub ustawia globalny serwer proxy HTTP.

Headers

Po zastąpieniu w klasie potomnej pobiera lub ustawia kolekcję par nazwa/wartość nagłówka skojarzonych z żądaniem.

ImpersonationLevel

Pobiera lub ustawia poziom personifikacji dla bieżącego żądania.

Method

Po zastąpieniu w klasie potomnej pobiera lub ustawia metodę protokołu do użycia w tym żądaniu.

PreAuthenticate

Po przesłonięciu w klasie potomnej wskazuje, czy wstępnie uwierzytelnić żądanie.

Proxy

Po przesłonięciu w klasie potomnej program pobiera lub ustawia serwer proxy sieci w celu uzyskania dostępu do tego zasobu internetowego.

RequestUri

Po zastąpieniu w klasie potomnej pobiera identyfikator URI zasobu internetowego skojarzonego z żądaniem.

Timeout

Pobiera lub ustawia czas (w milisekundach) przed upływem limitu czasu żądania.

UseDefaultCredentials

Po przesłonięciu w klasie potomnej pobiera lub ustawia Boolean wartość, która określa, czy DefaultCredentials są wysyłane z żądaniami.

Metody

Abort()

Przerywa żądanie.

BeginGetRequestStream(AsyncCallback, Object)

Po zastąpieniu w klasie potomnej udostępnia asynchroniczną wersję GetRequestStream() metody .

BeginGetResponse(AsyncCallback, Object)

Po zastąpieniu w klasie potomnej rozpoczyna asynchroniczne żądanie zasobu internetowego.

Create(String)
Przestarzałe.

Inicjuje nowe WebRequest wystąpienie dla określonego schematu identyfikatora URI.

Create(Uri)
Przestarzałe.

Inicjuje nowe WebRequest wystąpienie dla określonego schematu identyfikatora URI.

CreateDefault(Uri)
Przestarzałe.

Inicjuje nowe WebRequest wystąpienie dla określonego schematu identyfikatora URI.

CreateHttp(String)
Przestarzałe.

Inicjuje nowe HttpWebRequest wystąpienie dla określonego ciągu identyfikatora URI.

CreateHttp(Uri)
Przestarzałe.

Inicjuje nowe HttpWebRequest wystąpienie dla określonego identyfikatora URI.

CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

Po przesłonięciu w klasie potomnej funkcja zwraca Stream element do zapisywania danych w zasobie internetowym.

EndGetResponse(IAsyncResult)

Po zastąpieniu klasy potomnej funkcja zwraca wartość WebResponse.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Przestarzałe.

Wypełnia element SerializationInfo danymi wymaganymi do serializacji obiektu docelowego.

GetRequestStream()

Po przesłonięciu w klasie potomnej funkcja zwraca Stream element do zapisywania danych w zasobie internetowym.

GetRequestStreamAsync()

Po przesłonięciu w klasie potomnej funkcja zwraca Stream element do zapisywania danych w zasobie internetowym jako operację asynchroniczną.

GetResponse()

Po przesłonięciu w klasie potomnej zwraca odpowiedź na żądanie internetowe.

GetResponseAsync()

Po przesłonięciu w klasie potomnej zwraca odpowiedź na żądanie internetowe jako operację asynchroniczną.

GetSystemWebProxy()

Zwraca serwer proxy skonfigurowany z ustawieniami programu Internet Explorer aktualnie personifikowanego użytkownika.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia w celu kontrolowania zasad okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu.

(Odziedziczone po MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)
Przestarzałe.

IWebRequestCreate Zarejestruj obiekt.

RegisterPrefix(String, IWebRequestCreate)

Rejestruje element potomny WebRequest dla określonego identyfikatora URI.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Przestarzałe.

Po zastąpieniu klasy potomnej program wypełnia SerializationInfo wystąpienie danymi wymaganymi do serializacji klasy WebRequest.

Dotyczy

Zobacz też