WebRequest Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Kérést intéz egy egységes erőforrás-azonosítóhoz (URI). Ez egy abstract osztály.
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
- Öröklődés
-
WebRequest
- Öröklődés
- Származtatott
- Attribútumok
- Megvalósítás
Példák
Az alábbi példa bemutatja, hogyan hozhat létre példányt WebRequest , és hogyan adja vissza a választ.
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
Megjegyzések
Figyelmeztetés
WebRequest, HttpWebRequest, ServicePointés WebClient elavultak, és nem szabad új fejlesztésre használni őket. A HttpClient használható helyette.
WebRequest
abstract alaposztálya .NET kérési/válaszmodelljének az internetről való elérésére. A kérelem-/válaszmodellt használó alkalmazások protokollfüggő módon kérhetnek adatokat az internetről, amelyben az alkalmazás az osztály példányaival WebRequest dolgozik, míg a protokollspecifikus leszármazott osztályok végzik a kérés részleteit.
A kérelmeket egy alkalmazás küldi el egy adott URI-nak, például egy kiszolgálón található weblapnak. Az URI meghatározza a megfelelő leszármazottosztályt, amely az alkalmazáshoz regisztrált leszármazottak listájából WebRequest hozható létre. WebRequest a leszármazottak általában egy adott protokoll( például HTTP vagy FTP) kezelésére vannak regisztrálva, de regisztrálhatók egy adott kiszolgálóra vagy elérési útra irányuló kérések kezeléséhez a kiszolgálón.
Az WebRequest osztály hibát jelez WebException , amikor egy internetes erőforrás elérése közben hibák lépnek fel. A Status tulajdonság a WebExceptionStatus hiba forrását jelző értékek egyike. Ha Status igen WebExceptionStatus.ProtocolError, a Response tulajdonság az WebResponse internetes erőforrástól kapott elemet tartalmazza.
Mivel az WebRequest osztály egy abstract osztály, a példányok futási időben való tényleges viselkedését WebRequest a metódus által Create visszaadott leszármazott osztály határozza meg. Az alapértelmezett értékekkel és kivételekkel kapcsolatos további információkért tekintse meg a leszármazott osztályok dokumentációját, például HttpWebRequest és FileWebRequest.
Note
Ezzel a Create módszerrel inicializálhat új WebRequest példányokat. Ne használja a konstruktort WebRequest .
Note
Ha a WebRequest objektumot létrehozó alkalmazás normál felhasználó hitelesítő adataival fut, az alkalmazás csak akkor férhet hozzá a helyi géptárolóban telepített tanúsítványokhoz, ha erre kifejezetten engedélyt kapott a felhasználó.
Megjegyzések az implementálókhoz
Ha örököl, WebRequestfelül kell bírálnia a következő tagokat: Method, , RequestUri, HeadersContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object)EndGetRequestStream(IAsyncResult)GetResponse(), , BeginGetResponse(AsyncCallback, Object)és .EndGetResponse(IAsyncResult) Emellett meg kell adnia a IWebRequestCreate felület implementációját, amely meghatározza a Create(Uri) híváskor Create(Uri)használt metódust. Regisztrálnia kell a felületet megvalósító IWebRequestCreate osztályt a metódus vagy a RegisterPrefix(String, IWebRequestCreate) konfigurációs fájl használatával.
Konstruktorok
| Name | Description |
|---|---|
| WebRequest() |
Elavult.
Inicializálja a WebRequest osztály új példányát. |
| WebRequest(SerializationInfo, StreamingContext) |
Elavult.
Inicializálja az WebRequest osztály új példányát az és SerializationInfo az StreamingContext osztályok megadott példányaiból. |
Tulajdonságok
| Name | Description |
|---|---|
| AuthenticationLevel |
Lekéri vagy beállítja a kéréshez használt hitelesítési és megszemélyesítési szintet jelző értékeket. |
| CachePolicy |
Lekéri vagy beállítja a kérés gyorsítótárszabályzatát. |
| ConnectionGroupName |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja a kérés kapcsolatcsoportjának nevét. |
| ContentLength |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja az elküldött kérelemadatok tartalomhosszát. |
| ContentType |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja az elküldött kérelemadatok tartalomtípusát. |
| CreatorInstance |
Elavult.
Ha felül van bírálva egy leszármazott osztályban, lekéri a példányosított példány létrehozásához IWebRequestCreate használt osztályból WebRequest származó gyári objektumot a megadott URI-nak való kéréshez. |
| Credentials |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja a kérés internetes erőforrással való hitelesítéséhez használt hálózati hitelesítő adatokat. |
| DefaultCachePolicy |
Lekéri vagy beállítja a kérés alapértelmezett gyorsítótárszabályzatát. |
| DefaultWebProxy |
Lekéri vagy beállítja a globális HTTP-proxyt. |
| Headers |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja a kérelemhez társított fejlécnév-/értékpárok gyűjteményét. |
| ImpersonationLevel |
Lekéri vagy beállítja az aktuális kérés megszemélyesítési szintjét. |
| Method |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja a kérelemben használni kívánt protokollmetódust. |
| PreAuthenticate |
Ha egy leszármazott osztályban felül van bírálva, azt jelzi, hogy a kérést előre hitelesíteni kell-e. |
| Proxy |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállítja a hálózati proxyt, hogy hozzáférjen ehhez az internetes erőforráshoz. |
| RequestUri |
Ha egy leszármazott osztályban felül van bírálva, lekéri a kérelemhez társított internetes erőforrás URI-ját. |
| Timeout |
Ezredmásodpercben lekéri vagy beállítja az időtartamot, mielőtt a kérés túllépi az időkorlátot. |
| UseDefaultCredentials |
Ha egy leszármazott osztályban felül van bírálva, lekéri vagy beállít egy Boolean értéket, amely meghatározza, hogy a rendszer kérésekkel küldi-e DefaultCredentials el őket. |
Metódusok
| Name | Description |
|---|---|
| Abort() |
Megszakítja a kérést. |
| BeginGetRequestStream(AsyncCallback, Object) |
Ha egy leszármazott osztályban felülbírált, a metódus aszinkron verzióját GetRequestStream() adja meg. |
| BeginGetResponse(AsyncCallback, Object) |
Ha felülbírált egy leszármazott osztályban, elindít egy aszinkron kérést egy internetes erőforráshoz. |
| Create(String) |
Elavult.
Inicializál egy új WebRequest példányt a megadott URI-sémához. |
| Create(Uri) |
Elavult.
Inicializál egy új WebRequest példányt a megadott URI-sémához. |
| CreateDefault(Uri) |
Elavult.
Inicializál egy új WebRequest példányt a megadott URI-sémához. |
| CreateHttp(String) |
Elavult.
Inicializál egy új HttpWebRequest példányt a megadott URI-sztringhez. |
| CreateHttp(Uri) |
Elavult.
Inicializál egy új HttpWebRequest példányt a megadott URI-hoz. |
| CreateObjRef(Type) |
Létrehoz egy objektumot, amely tartalmazza a távoli objektumokkal való kommunikációhoz használt proxy létrehozásához szükséges összes releváns információt. (Öröklődés forrása MarshalByRefObject) |
| EndGetRequestStream(IAsyncResult) |
Ha egy leszármazott osztályban felül van bírálva, egy értéket ad vissza Stream az adatok internetes erőforrásba való írásához. |
| EndGetResponse(IAsyncResult) |
Ha felül van bírálva egy leszármazott osztályban, egy WebResponse. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetLifetimeService() |
Elavult.
Lekéri a példány élettartamszabályzatát vezérlő aktuális élettartam-szolgáltatásobjektumot. (Öröklődés forrása MarshalByRefObject) |
| GetObjectData(SerializationInfo, StreamingContext) |
Elavult.
Feltölti a SerializationInfo célobjektum szerializálásához szükséges adatokat. |
| GetRequestStream() |
Ha egy leszármazott osztályban felül van bírálva, egy értéket ad vissza Stream az adatok internetes erőforrásba való írásához. |
| GetRequestStreamAsync() |
Ha egy leszármazott osztályban felülbírált, a rendszer aszinkron Stream műveletként aszinkron műveletként ad vissza adatokat az internetes erőforrásba. |
| GetResponse() |
Ha egy leszármazott osztályban felül van bírálva, egy internetes kérésre adott választ ad vissza. |
| GetResponseAsync() |
Ha egy leszármazott osztályban felülbírált, egy internetes kérésre adott választ aszinkron műveletként ad vissza. |
| GetSystemWebProxy() |
Az aktuálisan megszemélyesített felhasználó internetes beállításaival konfigurált proxyt ad vissza. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| InitializeLifetimeService() |
Elavult.
Beolvas egy élettartam-szolgáltatásobjektumot a példány élettartam-szabályzatának szabályozásához. (Öröklődés forrása MarshalByRefObject) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| MemberwiseClone(Boolean) |
Az aktuális MarshalByRefObject objektum sekély másolatát hozza létre. (Öröklődés forrása MarshalByRefObject) |
| RegisterPortableWebRequestCreator(IWebRequestCreate) |
Elavult.
Objektum regisztrálása IWebRequestCreate . |
| RegisterPrefix(String, IWebRequestCreate) |
Regisztrál egy leszármazottat WebRequest a megadott URI-hoz. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Elavult.
Ha felül van bírálva egy leszármazott osztályban, feltölt egy példányt SerializationInfo a szerializáláshoz WebRequestszükséges adatokkal. |