WebRequest Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt een aanvraag ingediend bij een URI (Uniform Resource Identifier). Dit is een abstract klas.
public ref class WebRequest abstract
public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
public abstract class WebRequest
[System.Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
[<System.Serializable>]
type WebRequest = class
inherit MarshalByRefObject
interface ISerializable
type WebRequest = class
inherit MarshalByRefObject
interface ISerializable
Public MustInherit Class WebRequest
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
- Overname
-
WebRequest
- Overname
- Afgeleid
- Kenmerken
- Implementeringen
Voorbeelden
In het volgende voorbeeld ziet u hoe u een WebRequest exemplaar maakt en het antwoord retourneert.
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
Opmerkingen
Caution
WebRequest, HttpWebRequest, ServicePointen WebClient zijn verouderd en u moet ze niet gebruiken voor nieuwe ontwikkeling. Gebruik in plaats daarvan HttpClient.
WebRequest is de basisklasse abstract voor het aanvraag-/antwoordmodel van .NET voor toegang tot gegevens van internet. Een toepassing die gebruikmaakt van het aanvraag-/antwoordmodel kan gegevens van internet op een protocolagnostische manier aanvragen, waarbij de toepassing werkt met exemplaren van de WebRequest klasse, terwijl protocolspecifieke onderliggende klassen de details van de aanvraag uitvoeren.
Aanvragen worden verzonden van een toepassing naar een bepaalde URI, zoals een webpagina op een server. De URI bepaalt de juiste afstammelingsklasse die moet worden gemaakt op basis van WebRequest een lijst met afstammelingen die zijn geregistreerd voor de toepassing. WebRequest afstammelingen worden doorgaans geregistreerd voor het afhandelen van een specifiek protocol, zoals HTTP of FTP, maar kunnen worden geregistreerd om een aanvraag naar een specifieke server of een specifiek pad op een server af te handelen.
De WebRequest klasse genereert een WebException wanneer er fouten optreden tijdens het openen van een internetresource. De Status eigenschap is een van de WebExceptionStatus waarden die de bron van de fout aangeeft. Wanneer Status is WebExceptionStatus.ProtocolError, bevat de Response eigenschap de WebResponse ontvangen van de internetresource.
Omdat de WebRequest klasse een abstract klasse is, wordt het werkelijke gedrag van WebRequest exemplaren tijdens runtime bepaald door de onderliggende klasse die wordt geretourneerd door Create de methode. Zie de documentatie voor de onderliggende klassen, zoals HttpWebRequest en FileWebRequestvoor meer informatie over standaardwaarden en uitzonderingen.
Note
Gebruik de Create methode om nieuwe WebRequest exemplaren te initialiseren. Gebruik de WebRequest constructor niet.
Note
Als de toepassing die het WebRequest-object maakt, wordt uitgevoerd met de referenties van een normale gebruiker, heeft de toepassing geen toegang tot certificaten die zijn geïnstalleerd in het archief van de lokale computer, tenzij de gebruiker expliciet toestemming heeft gegeven om dit te doen.
Notities voor uitvoerders
Wanneer u overdrat, WebRequestmoet u de volgende leden overschrijven: Method, , RequestUri, ContentTypeHeadersCredentialsPreAuthenticateContentLength, , GetResponse()BeginGetRequestStream(AsyncCallback, Object)EndGetRequestStream(IAsyncResult)GetRequestStream(), , en . BeginGetResponse(AsyncCallback, Object)EndGetResponse(IAsyncResult) Daarnaast moet u een implementatie van de IWebRequestCreate interface opgeven, waarmee de Create(Uri) methode wordt gedefinieerd die wordt gebruikt wanneer u aanroept Create(Uri). U moet de klasse registreren die de IWebRequestCreate interface implementeert met behulp van de RegisterPrefix(String, IWebRequestCreate) methode of het configuratiebestand.
Constructors
| Name | Description |
|---|---|
| WebRequest() |
Initialiseert een nieuw exemplaar van de WebRequest klasse. |
| WebRequest(SerializationInfo, StreamingContext) |
Initialiseert een nieuw exemplaar van de WebRequest klasse op basis van de opgegeven exemplaren van de SerializationInfo en StreamingContext klassen. |
Eigenschappen
| Name | Description |
|---|---|
| AuthenticationLevel |
Hiermee worden waarden opgehaald of ingesteld die het verificatieniveau en imitatie aangeven dat voor deze aanvraag wordt gebruikt. |
| CachePolicy |
Hiermee haalt u het cachebeleid voor deze aanvraag op of stelt u dit in. |
| ConnectionGroupName |
Wanneer deze wordt overschreven in een onderliggende klasse, wordt de naam van de verbindingsgroep voor de aanvraag opgevraagd of ingesteld. |
| ContentLength |
Wanneer deze wordt overschreven in een onderliggende klasse, wordt de inhoudslengte opgehaald of ingesteld van de aanvraaggegevens die worden verzonden. |
| ContentType |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt of stelt u het inhoudstype in van de aanvraaggegevens die worden verzonden. |
| CreatorInstance |
Verouderd.
Wanneer dit wordt overschreven in een onderliggende klasse, wordt het fabrieksobject afgeleid van de IWebRequestCreate klasse die wordt gebruikt om de WebRequest geïnstantieerde instantie te maken voor het indienen van de aanvraag bij de opgegeven URI. |
| Credentials |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt of stelt u de netwerkreferenties in die worden gebruikt voor het verifiëren van de aanvraag met de internetresource. |
| DefaultCachePolicy |
Hiermee haalt u het standaardcachebeleid voor deze aanvraag op of stelt u dit in. |
| DefaultWebProxy |
Hiermee haalt u de globale HTTP-proxy op of stelt u deze in. |
| Headers |
Wanneer deze wordt overschreven in een onderliggende klasse, wordt de verzameling headernaam-/waardeparen opgehaald of ingesteld die aan de aanvraag zijn gekoppeld. |
| ImpersonationLevel |
Hiermee haalt u het imitatieniveau voor de huidige aanvraag op of stelt u dit in. |
| Method |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt of stelt u de protocolmethode in voor gebruik in deze aanvraag. |
| PreAuthenticate |
Wanneer deze wordt overschreven in een onderliggende klasse, geeft u aan of de aanvraag vooraf moet worden geverifieerd. |
| Proxy |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt of stelt u de netwerkproxy in voor toegang tot deze internetresource. |
| RequestUri |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt u de URI op van de internetresource die aan de aanvraag is gekoppeld. |
| Timeout |
Hiermee wordt de tijdsduur, in milliseconden, opgehaald of ingesteld voordat er een time-out optreedt voor de aanvraag. |
| UseDefaultCredentials |
Wanneer deze wordt overschreven in een onderliggende klasse, haalt of stelt u een Boolean waarde in waarmee wordt bepaald of DefaultCredentials ze worden verzonden met aanvragen. |
Methoden
| Name | Description |
|---|---|
| Abort() |
Hiermee wordt de aanvraag afgebroken. |
| BeginGetRequestStream(AsyncCallback, Object) |
Wanneer deze wordt overschreven in een onderliggende klasse, biedt deze een asynchrone versie van de GetRequestStream() methode. |
| BeginGetResponse(AsyncCallback, Object) |
Wanneer deze wordt overschreven in een onderliggende klasse, wordt een asynchrone aanvraag voor een internetresource gestart. |
| Create(String) |
Initialiseert een nieuw WebRequest exemplaar voor het opgegeven URI-schema. |
| Create(Uri) |
Initialiseert een nieuw WebRequest exemplaar voor het opgegeven URI-schema. |
| CreateDefault(Uri) |
Initialiseert een nieuw WebRequest exemplaar voor het opgegeven URI-schema. |
| CreateHttp(String) |
Initialiseert een nieuw HttpWebRequest exemplaar voor de opgegeven URI-tekenreeks. |
| CreateHttp(Uri) |
Initialiseert een nieuw HttpWebRequest exemplaar voor de opgegeven URI. |
| CreateObjRef(Type) |
Hiermee maakt u een object dat alle relevante informatie bevat die nodig is om een proxy te genereren die wordt gebruikt om te communiceren met een extern object. (Overgenomen van MarshalByRefObject) |
| EndGetRequestStream(IAsyncResult) |
Wanneer deze wordt overschreven in een onderliggende klasse, retourneert u een Stream voor het schrijven van gegevens naar de internetresource. |
| EndGetResponse(IAsyncResult) |
Wanneer deze wordt overschreven in een afstammelingsklasse, wordt een WebResponse. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetLifetimeService() |
Hiermee haalt u het huidige levensduurserviceobject op waarmee het levensduurbeleid voor dit exemplaar wordt beheerd. (Overgenomen van MarshalByRefObject) |
| GetObjectData(SerializationInfo, StreamingContext) |
Vult een SerializationInfo met de gegevens die nodig zijn om het doelobject te serialiseren. |
| GetRequestStream() |
Wanneer deze wordt overschreven in een onderliggende klasse, retourneert u een Stream voor het schrijven van gegevens naar de internetresource. |
| GetRequestStreamAsync() |
Wanneer deze wordt overschreven in een onderliggende klasse, retourneert u een Stream voor het schrijven van gegevens naar de internetresource als asynchrone bewerking. |
| GetResponse() |
Wanneer deze wordt overschreven in een onderliggende klasse, retourneert u een reactie op een internetaanvraag. |
| GetResponseAsync() |
Wanneer deze wordt overschreven in een onderliggende klasse, retourneert u een reactie op een internetaanvraag als asynchrone bewerking. |
| GetSystemWebProxy() |
Hiermee wordt een proxy geretourneerd die is geconfigureerd met de instellingen voor internetopties van de momenteel geïmiteerde gebruiker. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| InitializeLifetimeService() |
Hiermee haalt u een levensduurserviceobject op om het levensduurbeleid voor dit exemplaar te beheren. (Overgenomen van MarshalByRefObject) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| MemberwiseClone(Boolean) |
Hiermee maakt u een ondiepe kopie van het huidige MarshalByRefObject object. (Overgenomen van MarshalByRefObject) |
| RegisterPortableWebRequestCreator(IWebRequestCreate) |
Verouderd.
IWebRequestCreate Een object registreren. |
| RegisterPrefix(String, IWebRequestCreate) |
Registreert een WebRequest afstammeling voor de opgegeven URI. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Wanneer deze wordt overschreven in een onderliggende klasse, wordt een SerializationInfo exemplaar gevuld met de gegevens die nodig zijn om de WebRequest. |