WebRequest Třída

Definice

Vytvoří požadavek na identifikátor URI (Uniform Resource Identifier).Makes a request to a Uniform Resource Identifier (URI). Toto je abstract Třída.This is an abstract class.

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
Dědičnost
WebRequest
Dědičnost
Odvozené
Atributy
Implementuje

Příklady

Následující příklad ukazuje, jak vytvořit WebRequest instanci a vrátit odpověď.The following example shows how to create a WebRequest instance and return the response.

#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

Poznámky

Důležité

Pro nový vývoj nedoporučujeme používat WebRequest ani jeho odvozené třídy.We don't recommend that you use WebRequest or its derived classes for new development. Místo toho použijte System.Net.Http.HttpClient třídu.Instead, use the System.Net.Http.HttpClient class.

WebRequest je abstract základní třídou pro. Model požadavků a odpovědí netto pro přístup k datům z InternetuWebRequest is the abstract base class for .NET's request/response model for accessing data from the Internet. Aplikace, která používá model požadavků a odpovědí, může požadovat data z Internetu pomocí nezávislá protokolu, ve kterém aplikace pracuje s instancemi WebRequest třídy, zatímco následné třídy, které jsou specifické pro daný protokol, provádějí Podrobnosti žádosti.An application that uses the request/response model can request data from the Internet in a protocol-agnostic manner, in which the application works with instances of the WebRequest class while protocol-specific descendant classes carry out the details of the request.

Žádosti jsou odesílány z aplikace do konkrétního identifikátoru URI, například webové stránky na serveru.Requests are sent from an application to a particular URI, such as a Web page on a server. Identifikátor URI určuje správnou třídu následníka, která se má vytvořit ze seznamu WebRequest potomků registrovaných pro aplikaci.The URI determines the proper descendant class to create from a list of WebRequest descendants registered for the application. WebRequest následníky jsou obvykle registrovány pro zpracování konkrétního protokolu, například HTTP nebo FTP, ale mohou být registrovány pro zpracování požadavku na konkrétní server nebo cestu na serveru.WebRequest descendants are typically registered to handle a specific protocol, such as HTTP or FTP, but can be registered to handle a request to a specific server or path on a server.

WebRequestTřída vyvolá chybu, WebException když dojde k chybám při přístupu k internetovému prostředku.The WebRequest class throws a WebException when errors occur while accessing an Internet resource. StatusVlastnost je jednou z WebExceptionStatus hodnot, které označují zdroj chyby.The Status property is one of the WebExceptionStatus values that indicates the source of the error. V takovém případě Status WebExceptionStatus.ProtocolError Response vlastnost obsahuje WebResponse přijatý z internetového prostředku.When Status is WebExceptionStatus.ProtocolError, the Response property contains the WebResponse received from the Internet resource.

Vzhledem k tomu WebRequest , že třída je abstract třída, skutečné chování WebRequest instancí za běhu je určeno odvozenou třídou vrácenou Create metodou.Because the WebRequest class is an abstract class, the actual behavior of WebRequest instances at run time is determined by the descendant class returned by Create method. Další informace o výchozích hodnotách a výjimkách naleznete v dokumentaci pro odvozené třídy, jako jsou HttpWebRequest a FileWebRequest .For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest and FileWebRequest.

Poznámka

Použijte Create metodu pro inicializaci nových WebRequest instancí.Use the Create method to initialize new WebRequest instances. Nepoužívejte WebRequest konstruktor.Do not use the WebRequest constructor.

Poznámka

Pokud je aplikace, která vytvoří objekt WebRequest, spuštěna s přihlašovacími údaji normálního uživatele, aplikace nebude moci získat přístup k certifikátům nainstalovaným v úložišti místního počítače, pokud k tomu uživatel výslovně neudělil oprávnění.If the application that creates the WebRequest object runs with the credentials of a Normal user, the application will not be able to access certificates installed in the local machine store unless permission has been explicitly given to the user to do so.

Poznámky pro implementátory

Při dědění z je WebRequest nutné přepsat následující členy: Method , RequestUri , Headers , ContentLength , ContentType , Credentials , PreAuthenticate , GetRequestStream() , BeginGetRequestStream(AsyncCallback, Object) , EndGetRequestStream(IAsyncResult) , GetResponse() , BeginGetResponse(AsyncCallback, Object) a EndGetResponse(IAsyncResult) .When you inherit from WebRequest, you must override the following members: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult), GetResponse(), BeginGetResponse(AsyncCallback, Object), and EndGetResponse(IAsyncResult). Kromě toho je nutné poskytnout implementaci IWebRequestCreate rozhraní, které definuje Create(Uri) metodu použitou při volání Create(Uri) .In addition, you must provide an implementation of the IWebRequestCreate interface, which defines the Create(Uri) method used when you call Create(Uri). Je nutné zaregistrovat třídu, která implementuje IWebRequestCreate rozhraní, pomocí RegisterPrefix(String, IWebRequestCreate) metody nebo konfiguračního souboru.You must register the class that implements the IWebRequestCreate interface, using the RegisterPrefix(String, IWebRequestCreate) method or the configuration file.

Konstruktory

WebRequest()

Inicializuje novou instanci WebRequest třídy.Initializes a new instance of the WebRequest class.

WebRequest(SerializationInfo, StreamingContext)

Inicializuje novou instanci WebRequest třídy ze zadaných instancí SerializationInfo StreamingContext tříd a.Initializes a new instance of the WebRequest class from the specified instances of the SerializationInfo and StreamingContext classes.

Vlastnosti

AuthenticationLevel

Získá nebo nastaví hodnoty určující úroveň ověřování a zosobnění použitou pro tuto žádost.Gets or sets values indicating the level of authentication and impersonation used for this request.

CachePolicy

Získá nebo nastaví zásady mezipaměti pro tento požadavek.Gets or sets the cache policy for this request.

ConnectionGroupName

Při přepsání v odvozené třídě získá nebo nastaví název skupiny připojení pro požadavek.When overridden in a descendant class, gets or sets the name of the connection group for the request.

ContentLength

Při přepsání v odvozené třídě získá nebo nastaví délku obsahu odesílaných dat požadavku.When overridden in a descendant class, gets or sets the content length of the request data being sent.

ContentType

Při přepsání v odvozené třídě získává nebo nastavuje typ obsahu odesílaných dat požadavku.When overridden in a descendant class, gets or sets the content type of the request data being sent.

CreatorInstance
Zastaralé.

Při přepsání v odvozené třídě získá objekt factory odvozený z IWebRequestCreate třídy, která se používá k vytvoření WebRequest instance pro vytvoření instance pro zadání tohoto identifikátoru URI.When overridden in a descendant class, gets the factory object derived from the IWebRequestCreate class used to create the WebRequest instantiated for making the request to the specified URI.

Credentials

Při přepsání v odvozené třídě získá nebo nastaví síťové přihlašovací údaje používané k ověření žádosti u internetového prostředku.When overridden in a descendant class, gets or sets the network credentials used for authenticating the request with the Internet resource.

DefaultCachePolicy

Získá nebo nastaví výchozí zásady mezipaměti pro tento požadavek.Gets or sets the default cache policy for this request.

DefaultWebProxy

Získá nebo nastaví globální proxy server HTTP.Gets or sets the global HTTP proxy.

Headers

Při přepsání v odvozené třídě získává nebo nastavuje kolekci párů název/hodnota hlavičky přidružené k žádosti.When overridden in a descendant class, gets or sets the collection of header name/value pairs associated with the request.

ImpersonationLevel

Získá nebo nastaví úroveň zosobnění pro aktuální požadavek.Gets or sets the impersonation level for the current request.

Method

Při přepsání v odvozené třídě získá nebo nastaví metodu protokolu pro použití v rámci této žádosti.When overridden in a descendant class, gets or sets the protocol method to use in this request.

PreAuthenticate

Při přepsání v odvozené třídě označuje, zda se má žádost předem ověřit.When overridden in a descendant class, indicates whether to pre-authenticate the request.

Proxy

Při přepsání v odvozené třídě získá nebo nastaví síťový proxy server, který se má použít pro přístup k tomuto internetovému prostředku.When overridden in a descendant class, gets or sets the network proxy to use to access this Internet resource.

RequestUri

Při přepsání v odvozené třídě získá identifikátor URI internetového prostředku přidruženého k žádosti.When overridden in a descendant class, gets the URI of the Internet resource associated with the request.

Timeout

Získá nebo nastaví dobu v milisekundách, po jejímž uplynutí vyprší časový limit požadavku.Gets or sets the length of time, in milliseconds, before the request times out.

UseDefaultCredentials

Při přepsání v odvozené třídě získává nebo nastavuje Boolean hodnotu, která určuje, zda DefaultCredentials jsou odesílány s požadavky.When overridden in a descendant class, gets or sets a Boolean value that controls whether DefaultCredentials are sent with requests.

Metody

Abort()

Zruší požadavek.Aborts the request.

BeginGetRequestStream(AsyncCallback, Object)

Při přepsání v odvozené třídě poskytuje asynchronní verzi GetRequestStream() metody.When overridden in a descendant class, provides an asynchronous version of the GetRequestStream() method.

BeginGetResponse(AsyncCallback, Object)

Při přepsání v odvozené třídě začíná asynchronní požadavek na prostředek v Internetu.When overridden in a descendant class, begins an asynchronous request for an Internet resource.

Create(String)

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.Initializes a new WebRequest instance for the specified URI scheme.

Create(Uri)

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.Initializes a new WebRequest instance for the specified URI scheme.

CreateDefault(Uri)

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.Initializes a new WebRequest instance for the specified URI scheme.

CreateHttp(String)

Inicializuje novou HttpWebRequest instanci pro zadaný řetězec identifikátoru URI.Initializes a new HttpWebRequest instance for the specified URI string.

CreateHttp(Uri)

Inicializuje novou HttpWebRequest instanci pro zadaný identifikátor URI.Initializes a new HttpWebRequest instance for the specified URI.

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace požadované pro vygenerování proxy serveru, který se používá ke komunikaci se vzdáleným objektem.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Zděděno od MarshalByRefObject)
EndGetRequestStream(IAsyncResult)

Při přepsání v odvozené třídě vrátí hodnotu Stream pro zápis dat do internetového prostředku.When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

EndGetResponse(IAsyncResult)

Při přepsání v odvozené třídě vrátí WebResponse .When overridden in a descendant class, returns a WebResponse.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.Determines whether the specified object is equal to the current object.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.Serves as the default hash function.

(Zděděno od Object)
GetLifetimeService()

Načte aktuální objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext)

Naplní SerializationInfo data potřebná k serializaci cílového objektu.Populates a SerializationInfo with the data needed to serialize the target object.

GetRequestStream()

Při přepsání v odvozené třídě vrátí hodnotu Stream pro zápis dat do internetového prostředku.When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

GetRequestStreamAsync()

Při přepsání v odvozené třídě vrátí hodnotu Stream pro zápis dat do internetového prostředku jako asynchronní operace.When overridden in a descendant class, returns a Stream for writing data to the Internet resource as an asynchronous operation.

GetResponse()

Při přepsání v odvozené třídě vrátí odpověď na požadavek na Internet.When overridden in a descendant class, returns a response to an Internet request.

GetResponseAsync()

Při přepsání v odvozené třídě vrátí odpověď na požadavek na Internet jako asynchronní operaci.When overridden in a descendant class, returns a response to an Internet request as an asynchronous operation.

GetSystemWebProxy()

Vrátí proxy s nakonfigurovaným nastavením Internet Exploreru aktuálně zosobněného uživatele.Returns a proxy configured with the Internet Explorer settings of the currently impersonated user.

GetType()

Získá Type aktuální instanci.Gets the Type of the current instance.

(Zděděno od Object)
InitializeLifetimeService()

Získá objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Obtains a lifetime service object to control the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří kopii aktuálního seznamu Object .Creates a shallow copy of the current Object.

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří kopii aktuálního objektu bez podstruktury MarshalByRefObject .Creates a shallow copy of the current MarshalByRefObject object.

(Zděděno od MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate)
Zastaralé.

Zaregistrujte IWebRequestCreate objekt.Register an IWebRequestCreate object.

RegisterPrefix(String, IWebRequestCreate)

Zaregistruje WebRequest následníka pro zadaný identifikátor URI.Registers a WebRequest descendant for the specified URI.

ToString()

Vrátí řetězec, který představuje aktuální objekt.Returns a string that represents the current object.

(Zděděno od Object)

Explicitní implementace rozhraní

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Při přepsání v odvozené třídě naplní SerializationInfo instanci daty potřebnými k serializaci WebRequest .When overridden in a descendant class, populates a SerializationInfo instance with the data needed to serialize the WebRequest.

Platí pro

Viz také