WebRequest Klasa

Definicja

Wysyła żądanie do identyfikatora URI (Uniform Resource Identifier). Jest abstract to 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 używaj WebRequest ani klas pochodnych do 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żny od protokołu, w którym aplikacja współpracuje z wystąpieniami WebRequest klasy, podczas gdy klasy podrzędne 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 odpowiednią klasę potomną do utworzenia na podstawie listy elementó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 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 jest to WebExceptionStatus.ProtocolError, 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ą zwróconą 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

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

Uwaga

Jeśli aplikacja, która tworzy obiekt WebRequest, jest uruchamiana przy użyciu poświadczeń normalnego użytkownika, aplikacja nie będzie mogła uzyskać dostępu do certyfikatów zainstalowanych w magazynie komputerów lokalnych, chyba że uprawnienie zostało jawnie przekazane użytkownikowi do tego celu.

Uwagi dotyczące implementowania

Po dziedziczeniu z WebRequestprogramu 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óra definiuje Create(Uri) metodę używaną podczas wywoływania Create(Uri)metody . Należy zarejestrować klasę IWebRequestCreate , która implementuje interfejs przy użyciu RegisterPrefix(String, IWebRequestCreate) metody lub pliku konfiguracji.

Konstruktory

WebRequest()
Nieaktualne.

Inicjuje nowe wystąpienie klasy WebRequest.

WebRequest(SerializationInfo, StreamingContext)
Nieaktualne.

Inicjuje WebRequest nowe wystąpienie 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

Gdy zastąpisz klasę potomną, pobiera lub ustawia nazwę grupy połączeń dla żądania.

ContentLength

Gdy zastąpisz klasę potomną, pobiera lub ustawia długość zawartości wysyłanych danych żądania.

ContentType

Gdy zastąpisz klasę potomną, pobiera lub ustawia typ zawartości wysyłanych danych żądania.

CreatorInstance
Nieaktualne.

Po zastąpieniu klasy 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 klasy 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

W przypadku zastąpienia w klasie potomnej pobiera lub ustawia kolekcję par nazwy/wartości nagłówka skojarzonych z żądaniem.

ImpersonationLevel

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

Method

Gdy zastąpisz klasę potomną, pobiera lub ustawia metodę protokołu do użycia w tym żądaniu.

PreAuthenticate

W przypadku zastąpienia w klasie potomnej wskazuje, czy wstępnie uwierzytelnić żądanie.

Proxy

Po zastąpieniu klasy potomnej pobiera lub ustawia serwer proxy sieci do użycia w celu uzyskania dostępu do tego zasobu internetowego.

RequestUri

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

Timeout

Pobiera lub ustawia czas (w milisekundach) przed przekroczeniem limitu czasu żądania.

UseDefaultCredentials

Po zastąpieniu klasy potomnej pobiera lub ustawia Boolean wartość, która kontroluje, czy DefaultCredentials są wysyłane z żądaniami.

Metody

Abort()

Przerywa żądanie.

BeginGetRequestStream(AsyncCallback, Object)

W przypadku przesłonięcia w klasie potomnej zapewnia asynchroniczną wersję GetRequestStream() metody .

BeginGetResponse(AsyncCallback, Object)

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

Create(String)
Nieaktualne.

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

Create(Uri)
Nieaktualne.

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

CreateDefault(Uri)
Nieaktualne.

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

CreateHttp(String)
Nieaktualne.

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

CreateHttp(Uri)
Nieaktualne.

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)

Gdy zastąpisz klasę potomną, zwraca wartość do Stream zapisywania danych w zasobie internetowym.

EndGetResponse(IAsyncResult)

Po przesłonięciu klasy potomnej 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()
Nieaktualne.

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

(Odziedziczone po MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)
Nieaktualne.

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

GetRequestStream()

Gdy zastąpisz klasę potomną, zwraca wartość do Stream zapisywania danych w zasobie internetowym.

GetRequestStreamAsync()

Gdy zastąpisz klasę potomną, zwraca element Stream do zapisywania danych w zasobie internetowym jako operację asynchroniczną.

GetResponse()

Gdy zastąpisz klasę potomną, zwraca odpowiedź na żądanie internetowe.

GetResponseAsync()

Gdy zastąpisz klasę potomną, 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 bieżące wystąpienie.

(Odziedziczone po Object)
InitializeLifetimeService()
Nieaktualne.

Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady 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)
Nieaktualne.

IWebRequestCreate Zarejestruj obiekt.

RegisterPrefix(String, IWebRequestCreate)

Rejestruje element WebRequest podrzędny dla określonego identyfikatora URI.

ToString()

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

(Odziedziczone po Object)

Jawne implementacje interfejsu

ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Nieaktualne.

Gdy zastąpisz klasę SerializationInfo potomną, wypełnia wystąpienie danymi wymaganymi do serializacji WebRequestklasy .

Dotyczy

Zobacz też