WebRequest Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.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é
WebRequest
Nepoužívejte pro nový vývoj ani jejich odvozené třídy. Místo toho použijte System.Net.Http.HttpClient třídu .
WebRequestabstract
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 požadovat data z internetu způsobem, který je nezávislý na protokolu, kdy aplikace pracuje s instancemi WebRequest třídy, zatímco následné třídy specifické pro protokol provádějí podrobnosti o požadavku.
Požadavky se odesílají z aplikace na konkrétní identifikátor URI, například na webovou stránku na serveru. Identifikátor URI určuje správnou potomkovou třídu, kterou chcete vytvořit ze seznamu potomků registrovaných WebRequest pro aplikaci. WebRequest potomci jsou obvykle registrováni pro zpracování určitého protokolu, jako je HTTP nebo FTP, ale mohou být zaregistrováni pro zpracování požadavku na konkrétní server nebo cestu na serveru.
Třída WebRequest vyvolá chybu, když dojde k chybám WebException při přístupu k internetovému prostředku. Vlastnost Status je jednou z WebExceptionStatus hodnot, které označují zdroj chyby. Pokud Status je WebExceptionStatus.ProtocolError, Response vlastnost obsahuje WebResponse přijatý z internetového prostředku.
Vzhledem k tomu, že WebRequest třída je abstract
třída, skutečné chování WebRequest instancí za běhu je určeno následnou třídou vrácenou metodou Create . Další informace o výchozích hodnotách a výjimkách najdete v dokumentaci pro odvozené třídy, například HttpWebRequest a FileWebRequest.
Poznámka
K inicializaci nových WebRequest instancí použijte metodu Create . Nepoužívejte WebRequest konstruktor.
Poznámka
Pokud aplikace, která vytváří 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 uživatel k tomu explicitně neudělí oprávnění.
Poznámky pro implementátory
Při dědění z WebRequestmusíte přepsat následující členy: Method, RequestUri, Headers, ContentLength, ContentType, PreAuthenticateCredentials, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), , EndGetRequestStream(IAsyncResult), GetResponse(), BeginGetResponse(AsyncCallback, Object)a EndGetResponse(IAsyncResult). Kromě toho musíte zadat implementaci IWebRequestCreate rozhraní, která definuje metodu použitou Create(Uri) při volání Create(Uri). Musíte zaregistrovat třídu, která implementuje IWebRequestCreate rozhraní, pomocí RegisterPrefix(String, IWebRequestCreate) metody nebo konfiguračního souboru.
Konstruktory
WebRequest() |
Zastaralé.
Inicializuje novou instanci WebRequest třídy. |
WebRequest(SerializationInfo, StreamingContext) |
Zastaralé.
Inicializuje novou instanci WebRequest třídy ze zadaných SerializationInfo instancí tříd a StreamingContext . |
Vlastnosti
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 následné třídě získá nebo nastaví název skupiny připojení pro požadavek. |
ContentLength |
Při přepsání v následné třídě získá nebo nastaví délku obsahu odesílaných dat požadavku. |
ContentType |
Při přepsání v následné třídě získá nebo nastaví typ obsahu odesílaných dat požadavku. |
CreatorInstance |
Zastaralé.
Při přepsání v následné třídě získá objekt factory odvozený z IWebRequestCreate třídy použité k vytvoření WebRequest instance pro provedení požadavku na zadaný identifikátor URI. |
Credentials |
Při přepsání v potomkovací třídě získá nebo nastaví přihlašovací údaje sítě používané k ověření 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 http. |
Headers |
Při přepsání v následné 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í aktuálního požadavku. |
Method |
Při přepsání v následné třídě získá nebo nastaví metodu protokolu pro použití v tomto požadavku. |
PreAuthenticate |
Při přepsání v následné třídě označuje, zda se má žádost předem ověřit. |
Proxy |
Při přepsání v následné třídě získá nebo nastaví síťový proxy server pro přístup k tomuto internetovému prostředku. |
RequestUri |
Při přepsání v následné třídě 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 potomkovací třídě získá nebo nastaví Boolean hodnotu, která určuje, zda DefaultCredentials se odesílají s požadavky. |
Metody
Abort() |
Přeruší žádost. |
BeginGetRequestStream(AsyncCallback, Object) |
Při přepsání v následné třídě poskytuje asynchronní verzi GetRequestStream() metody. |
BeginGetResponse(AsyncCallback, Object) |
Při přepsání v následné třídě začne 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 používaného ke komunikaci se vzdáleným objektem. (Zděděno od MarshalByRefObject) |
EndGetRequestStream(IAsyncResult) |
Při přepsání v potomkované třídě vrátí hodnotu Stream pro zápis dat do internetového prostředku. |
EndGetResponse(IAsyncResult) |
Při přepsání v potomkované třídě vrátí hodnotu WebResponse. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (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 objekt daty potřebnými k serializaci cílového objektu. |
GetRequestStream() |
Při přepsání v potomkované třídě vrátí hodnotu Stream pro zápis dat do internetového prostředku. |
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í operaci. |
GetResponse() |
Při přepsání v odvozené třídě vrátí odpověď na požadavek internetu. |
GetResponseAsync() |
Při přepsání v odvozené třídě vrátí odpověď na internetový požadavek jako asynchronní operaci. |
GetSystemWebProxy() |
Vrátí proxy server nakonfigurovaný s nastavením aplikace Internet Explorer aktuálně zosobněného uživatele. |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
InitializeLifetimeService() |
Zastaralé.
Získá objekt služby životnosti, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (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 potomka WebRequest pro zadaný identifikátor URI. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Zastaralé.
Při přepsání v potomkované třídě naplní SerializationInfo instanci dat potřebnými k serializaci WebRequest. |
Platí pro
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro