Sdílet prostřednictvím


WebRequest Třída

Definice

Vytvoří požadavek na identifikátor URI (Uniform Resource Identifier). Toto je abstract třída.

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ěď.

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

Opatrnost

WebRequest, HttpWebRequest, ServicePointa WebClient jsou zastaralé a neměli byste je používat pro nový vývoj. Místo toho použijte HttpClient.

WebRequest abstract je základní třída pro . Model požadavků a odpovědí net pro přístup k datům z internetu Aplikace, která používá model požadavků a odpovědí, může vyžadovat data z internetu způsobem, který je nezávislý na protokolu, ve kterém aplikace pracuje s instancemi WebRequest třídy, zatímco potomkové třídy specifické pro protokol provádějí podrobnosti požadavku.

Požadavky se odesílají z aplikace na konkrétní identifikátor URI, například na webové stránce na serveru. Identifikátor URI určuje správnou potomkovou třídu, která se má vytvořit ze seznamu potomků registrovaných WebRequest pro aplikaci. WebRequest potomky se obvykle registrují ke zpracování konkrétního protokolu, jako je HTTP nebo FTP, ale je možné je zaregistrovat ke zpracování požadavku na konkrétní server nebo cestu na serveru.

Třída WebRequest vyvolá WebException chybu při přístupu k internetovému prostředku. Vlastnost Status je jednou z WebExceptionStatus hodnot, která označuje zdroj chyby. Pokud Status je WebExceptionStatus.ProtocolError, Response vlastnost obsahuje WebResponse přijatý z internetového prostředku.

WebRequest Protože třída je abstract třída, skutečné chování WebRequest instancí za běhu je určeno potomkem třídy vrácenou metodouCreate. Další informace o výchozích hodnotách a výjimkách naleznete v dokumentaci pro třídy potomků, například HttpWebRequest a FileWebRequest.

Poznámka

K inicializaci nových WebRequest instancí použijte metoduCreate. Nepoužívejte WebRequest konstruktor.

Poznámka

Pokud aplikace, která vytvoří objekt WebRequest, běží s přihlašovacími údaji normálního uživatele, aplikace nebude mít přístup k certifikátům nainstalovaným v úložišti místního počítače, pokud mu k tomu nebyla explicitně udělena oprávnění.

Poznámky pro implementátory

Při dědění z WebRequest, musíte přepsat následující členy: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, BeginGetRequestStream(AsyncCallback, Object)GetRequestStream(), EndGetRequestStream(IAsyncResult)GetResponse(), , BeginGetResponse(AsyncCallback, Object)a EndGetResponse(IAsyncResult). Kromě toho musíte poskytnout implementaci IWebRequestCreate rozhraní, která definuje metodu použitou Create(Uri) při volání Create(Uri). Pomocí metody nebo konfiguračního souboru je nutné zaregistrovat třídu, RegisterPrefix(String, IWebRequestCreate) která implementuje IWebRequestCreate rozhraní.

Konstruktory

Name Description
WebRequest()
Zastaralé.

Inicializuje novou instanci WebRequest třídy.

WebRequest(SerializationInfo, StreamingContext)
Zastaralé.

Inicializuje novou instanci WebRequest třídy ze zadaných SerializationInfo instancí třídy a StreamingContext třídy.

Vlastnosti

Name Description
AuthenticationLevel

Získá nebo nastaví hodnoty označující úroveň ověřování a zosobnění použité pro tento požadavek.

CachePolicy

Získá nebo nastaví zásady mezipaměti pro tento požadavek.

ConnectionGroupName

Při přepsání v potomk třídy získá nebo nastaví název skupiny připojení pro požadavek.

ContentLength

Při přepsání v potomk třídě získá nebo nastaví délku obsahu odesílaných dat požadavku.

ContentType

Při přepsání v potomkové třídě získá nebo nastaví typ obsahu odesílaných dat požadavku.

CreatorInstance
Zastaralé.

Při přepsání v potomk třídy získá objekt továrny odvozený z IWebRequestCreate třídy použité k vytvoření WebRequest instance pro vytvoření požadavku na zadaný identifikátor URI.

Credentials

Při přepsání v potomkovací třídě získá nebo nastaví síťové přihlašovací údaje používané k ověřování požadavku s internetovým prostředkem.

DefaultCachePolicy

Získá nebo nastaví výchozí zásady mezipaměti pro tento požadavek.

DefaultWebProxy

Získá nebo nastaví globální proxy server HTTP.

Headers

Při přepsání v potomkovací třídě získá nebo nastaví kolekci dvojic název/hodnota hlavičky přidružené k požadavku.

ImpersonationLevel

Získá nebo nastaví úroveň zosobnění pro aktuální požadavek.

Method

Při přepsání v potomk třídy získá nebo nastaví metodu protokolu pro použití v tomto požadavku.

PreAuthenticate

Při přepsání v potomkové třídě označuje, zda se má požadavek předem ověřit.

Proxy

Při přepsání v potomk třídy získá nebo nastaví síťový proxy server pro přístup k tomuto internetovému prostředku.

RequestUri

Při přepsání v potomk třídy získá identifikátor URI internetového prostředku přidruženého k požadavku.

Timeout

Získá nebo nastaví dobu v milisekundách před vypršením časového limitu požadavku.

UseDefaultCredentials

Při přepsání v potomk třídy získá nebo nastaví Boolean hodnotu, která určuje, zda DefaultCredentials jsou odesílány s požadavky.

Metody

Name Description
Abort()

Žádost se přeruší.

BeginGetRequestStream(AsyncCallback, Object)

Při přepsání v potomk třídy poskytuje asynchronní verzi GetRequestStream() metody.

BeginGetResponse(AsyncCallback, Object)

Při přepsání v potomk třídy, zahájí asynchronní požadavek na internetový prostředek.

Create(String)
Zastaralé.

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.

Create(Uri)
Zastaralé.

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.

CreateDefault(Uri)
Zastaralé.

Inicializuje novou WebRequest instanci pro zadané schéma identifikátoru URI.

CreateHttp(String)
Zastaralé.

Inicializuje novou HttpWebRequest instanci pro zadaný řetězec identifikátoru URI.

CreateHttp(Uri)
Zastaralé.

Inicializuje novou HttpWebRequest instanci pro zadaný identifikátor URI.

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy serveru sloužícího ke komunikaci se vzdáleným objektem.

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

Při přepsání v potomk třídy vrátí Stream pro zápis dat do internetového prostředku.

EndGetResponse(IAsyncResult)

Při přepsání v potomk třídy vrátí hodnotu WebResponse.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci.

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

Naplní SerializationInfo data potřebná k serializaci cílového objektu.

GetRequestStream()

Při přepsání v potomk třídy vrátí Stream pro zápis dat do internetového prostředku.

GetRequestStreamAsync()

Při přepsání v potomk třídy vrátí Stream pro zápis dat do internetového prostředku jako asynchronní operace.

GetResponse()

Při přepsání v potomk třídy vrátí odpověď na internetový požadavek.

GetResponseAsync()

Při přepsání v potomk třídy vrátí odpověď na internetový požadavek jako asynchronní operace.

GetSystemWebProxy()

Vrátí proxy server nakonfigurovaný s nastavením možností internetu aktuálně zosobněného uživatele.

GetType()

Získá Type aktuální instance.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti pro řízení zásad životnosti pro tuto instanci.

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

Vytvoří mělkou kopii aktuálního Object.

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

Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu.

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

Zaregistrujte IWebRequestCreate objekt.

RegisterPrefix(String, IWebRequestCreate)

Zaregistruje WebRequest potomka pro zadaný identifikátor URI.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
ISerializable.GetObjectData(SerializationInfo, StreamingContext)
Zastaralé.

Při přepsání v potomk třídy naplní SerializationInfo instanci dat potřebnými k serializaci WebRequest.

Platí pro

Viz také