WebRequest WebRequest WebRequest WebRequest Class

Definizione

Viene effettuata una richiesta a un URI (Uniform Resource Identifier).Makes a request to a Uniform Resource Identifier (URI). Si tratta di una classe abstract.This is an abstract class.

public ref class WebRequest abstract : MarshalByRefObject, System::Runtime::Serialization::ISerializable
[System.Serializable]
public abstract class WebRequest : MarshalByRefObject, System.Runtime.Serialization.ISerializable
type WebRequest = class
    inherit MarshalByRefObject
    interface ISerializable
Public MustInherit Class WebRequest
Inherits MarshalByRefObject
Implements ISerializable
Ereditarietà
Derivato
Attributi
Implementazioni

Esempi

Nell'esempio seguente viene illustrato come creare un WebRequest dell'istanza e restituire la risposta.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
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 'Main
    End Class 'WebRequestGetExample
End Namespace

Commenti

Importante

Non è consigliabile usare WebRequest o delle relative classi derivate per i nuovi sviluppi.We don't recommend that you use WebRequest or its derived classes for new development. Usare invece il System.Net.Http.HttpClient classe.Instead, use the System.Net.Http.HttpClient class.

WebRequest è il abstract classe di base. Modello di richiesta/risposta della rete per l'accesso ai dati da Internet.WebRequest is the abstract base class for .NET's request/response model for accessing data from the Internet. Un'applicazione che usa il modello di richiesta/risposta può richiedere dati da Internet in modo indipendente dal protocollo, in cui l'applicazione funziona con le istanze del WebRequest classe mentre le classi derivate specifiche del protocollo di svolgere i dettagli di la richiesta.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.

Le richieste vengono inviate da un'applicazione a un particolare URI, ad esempio una pagina Web in un server.Requests are sent from an application to a particular URI, such as a Web page on a server. L'URI determina la classe discendente appropriata per creare un elenco di WebRequest discendenti registrata per l'applicazione.The URI determines the proper descendant class to create from a list of WebRequest descendants registered for the application. WebRequest i discendenti vengono in genere registrati per gestire un protocollo specifico, ad esempio HTTP o FTP, ma possono essere registrati per gestire una richiesta a un server specifico o un percorso in un server.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.

Il WebRequest classe genera un WebException quando si verificano errori durante l'accesso a una risorsa Internet.The WebRequest class throws a WebException when errors occur while accessing an Internet resource. Il Status proprietà è una del WebExceptionStatus valori che indica l'origine dell'errore.The Status property is one of the WebExceptionStatus values that indicates the source of the error. Quando Status viene WebExceptionStatus.ProtocolError, il Response proprietà contiene il WebResponse ricevuti dalla risorsa Internet.When Status is WebExceptionStatus.ProtocolError, the Response property contains the WebResponse received from the Internet resource.

Poiché il WebRequest classe è un abstract classe, il comportamento effettivo del WebRequest istanze in fase di esecuzione è determinato dalla classe discendente restituita da Create (metodo).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. Per altre informazioni sui valori predefiniti e le eccezioni, vedere la documentazione per le classi discendenti, ad esempio HttpWebRequest e FileWebRequest.For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest and FileWebRequest.

Nota

Usare la Create metodo per inizializzare nuove WebRequest istanze.Use the Create method to initialize new WebRequest instances. Non usare il WebRequest costruttore.Do not use the WebRequest constructor.

Nota

Se l'applicazione che crea l'oggetto WebRequest in esecuzione con le credenziali dell'utente normale, l'applicazione non sarà in grado di accedere ai certificati installati nell'archivio del computer locale, a meno che l'autorizzazione è stata assegnata in modo esplicito all'utente a questo scopo.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.

Note per gli eredi

Quando si eredita da WebRequest, è necessario eseguire l'override dei membri seguenti: Method, RequestUri, Headers, ContentLength, ContentType, Credentials, PreAuthenticate, GetRequestStream(), BeginGetRequestStream(AsyncCallback, Object), EndGetRequestStream(IAsyncResult) , GetResponse(), BeginGetResponse(AsyncCallback, Object), e 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). Inoltre, è necessario fornire un'implementazione del IWebRequestCreate interfaccia che definisce il Create(Uri) usato quando si chiama metodo 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). È necessario registrare la classe che implementa il IWebRequestCreate dell'interfaccia, usando il RegisterPrefix(String, IWebRequestCreate) metodo o il file di configurazione.You must register the class that implements the IWebRequestCreate interface, using the RegisterPrefix(String, IWebRequestCreate) method or the configuration file.

Costruttori

WebRequest() WebRequest() WebRequest() WebRequest()

Inizializza una nuova istanza della classe WebRequest.Initializes a new instance of the WebRequest class.

WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext) WebRequest(SerializationInfo, StreamingContext)

Inizializza una nuova istanza della classe WebRequest dalle istanze specificate delle classi SerializationInfo e StreamingContext.Initializes a new instance of the WebRequest class from the specified instances of the SerializationInfo and StreamingContext classes.

Proprietà

AuthenticationLevel AuthenticationLevel AuthenticationLevel AuthenticationLevel

Ottiene o imposta i valori che indicano il livello di autenticazione e di rappresentazione usati per la richiesta.Gets or sets values indicating the level of authentication and impersonation used for this request.

CachePolicy CachePolicy CachePolicy CachePolicy

Ottiene o imposta i criteri della cache per la richiesta.Gets or sets the cache policy for this request.

ConnectionGroupName ConnectionGroupName ConnectionGroupName ConnectionGroupName

Quando sottoposto a override in una classe discendente, ottiene o imposta il nome del gruppo di connessione utilizzato per la richiesta.When overridden in a descendant class, gets or sets the name of the connection group for the request.

ContentLength ContentLength ContentLength ContentLength

Quando sottoposto a override in una classe discendente, recupera o imposta la lunghezza dei dati inviati per la richiesta.When overridden in a descendant class, gets or sets the content length of the request data being sent.

ContentType ContentType ContentType ContentType

Quando viene sottoposto a override in una classe discendente, ottiene o imposta il tipo di contenuto dei dati inviati per la richiesta.When overridden in a descendant class, gets or sets the content type of the request data being sent.

CreatorInstance CreatorInstance CreatorInstance CreatorInstance

Quando ne viene eseguito l'override in una classe discendente, ottiene l'oggetto factory derivato dalla classe IWebRequestCreate usato per creare l'oggetto WebRequest di cui è stata creata un'istanza per effettuare la richiesta all'URI specificato.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 Credentials Credentials Credentials

Quando viene sottoposto a override in una classe discendente, ottiene o imposta le credenziali di rete utilizzate per l'autenticazione della richiesta con la risorsa Internet.When overridden in a descendant class, gets or sets the network credentials used for authenticating the request with the Internet resource.

DefaultCachePolicy DefaultCachePolicy DefaultCachePolicy DefaultCachePolicy

Ottiene o imposta i criteri di cache predefiniti per questa richiesta.Gets or sets the default cache policy for this request.

DefaultWebProxy DefaultWebProxy DefaultWebProxy DefaultWebProxy

Ottiene o imposta il proxy HTTP globale.Gets or sets the global HTTP proxy.

Headers Headers Headers Headers

Quando viene sottoposto a override in una classe discendente, ottiene o imposta la raccolta di coppie nome/valore di intestazione associate alla richiesta.When overridden in a descendant class, gets or sets the collection of header name/value pairs associated with the request.

ImpersonationLevel ImpersonationLevel ImpersonationLevel ImpersonationLevel

Ottiene o imposta il livello di rappresentazione per la richiesta corrente.Gets or sets the impersonation level for the current request.

Method Method Method Method

Quando viene sottoposto a override in una classe discendente, ottiene o imposta il metodo di protocollo da utilizzare nella richiesta.When overridden in a descendant class, gets or sets the protocol method to use in this request.

PreAuthenticate PreAuthenticate PreAuthenticate PreAuthenticate

Quando viene sottoposto a override in una classe discendente, indica se è necessario preautenticare la richiesta.When overridden in a descendant class, indicates whether to pre-authenticate the request.

Proxy Proxy Proxy Proxy

Quando viene sottoposto a override in una classe discendente, ottiene o imposta il proxy di rete per accedere alla risorsa Internet.When overridden in a descendant class, gets or sets the network proxy to use to access this Internet resource.

RequestUri RequestUri RequestUri RequestUri

Quando viene sottoposto a override in una classe discendente, ottiene l'URI della risorsa Internet associata alla richiesta.When overridden in a descendant class, gets the URI of the Internet resource associated with the request.

Timeout Timeout Timeout Timeout

Ottiene o imposta il periodo di tempo, in millisecondi, fino al timeout della richiesta.Gets or sets the length of time, in milliseconds, before the request times out.

UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials UseDefaultCredentials

Quando viene sottoposto a override in una classe discendente, ottiene o imposta un valore Boolean che controlla se DefaultCredentials vengono inviate con le richieste.When overridden in a descendant class, gets or sets a Boolean value that controls whether DefaultCredentials are sent with requests.

Metodi

Abort() Abort() Abort() Abort()

Interrompe la richiesta.Aborts the request.

BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object) BeginGetRequestStream(AsyncCallback, Object)

Quando viene sottoposto a override in una classe discendente, fornisce una versione asincrona del metodo GetRequestStream().When overridden in a descendant class, provides an asynchronous version of the GetRequestStream() method.

BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object) BeginGetResponse(AsyncCallback, Object)

Quando viene sottoposto a override in una classe discendente, avvia una richiesta asincrona per una risorsa Internet.When overridden in a descendant class, begins an asynchronous request for an Internet resource.

Create(String) Create(String) Create(String) Create(String)

Inizializza una nuova istanza di WebRequest per lo schema URI specificato.Initializes a new WebRequest instance for the specified URI scheme.

Create(Uri) Create(Uri) Create(Uri) Create(Uri)

Inizializza una nuova istanza di WebRequest per lo schema URI specificato.Initializes a new WebRequest instance for the specified URI scheme.

CreateDefault(Uri) CreateDefault(Uri) CreateDefault(Uri) CreateDefault(Uri)

Inizializza una nuova istanza di WebRequest per lo schema URI specificato.Initializes a new WebRequest instance for the specified URI scheme.

CreateHttp(String) CreateHttp(String) CreateHttp(String) CreateHttp(String)

Inizializza una nuova istanza della classe HttpWebRequest per la stinga URI specificata.Initializes a new HttpWebRequest instance for the specified URI string.

CreateHttp(Uri) CreateHttp(Uri) CreateHttp(Uri) CreateHttp(Uri)

Inizializza una nuova istanza di HttpWebRequest per l'URI specificato.Initializes a new HttpWebRequest instance for the specified URI.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult) EndGetRequestStream(IAsyncResult)

Quando viene sottoposto a override in una classe discendente, restituisce un Stream per l'inserimento di dati nella risorsa Internet.When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult) EndGetResponse(IAsyncResult)

Quando viene sottoposto a override in una classe discendente, restituisce una WebResponse.When overridden in a descendant class, returns a WebResponse.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Popola un oggetto SerializationInfo con i dati necessari per serializzare l'oggetto di destinazione.Populates a SerializationInfo with the data needed to serialize the target object.

GetRequestStream() GetRequestStream() GetRequestStream() GetRequestStream()

Quando viene sottoposto a override in una classe discendente, restituisce un Stream per l'inserimento di dati nella risorsa Internet.When overridden in a descendant class, returns a Stream for writing data to the Internet resource.

GetRequestStreamAsync() GetRequestStreamAsync() GetRequestStreamAsync() GetRequestStreamAsync()

Quando viene sottoposto a override in una classe discendente, restituisce un Stream per la scrittura dei dati nella risorse Internet come operazione asincrona.When overridden in a descendant class, returns a Stream for writing data to the Internet resource as an asynchronous operation.

GetResponse() GetResponse() GetResponse() GetResponse()

Quando sottoposto a override in una classe discendente, restituisce una risposta a una richiesta Internet.When overridden in a descendant class, returns a response to an Internet request.

GetResponseAsync() GetResponseAsync() GetResponseAsync() GetResponseAsync()

Quando sottoposto a override in una classe discendente, restituisce una risposta a una richiesta Internet come operazione asincrona.When overridden in a descendant class, returns a response to an Internet request as an asynchronous operation.

GetSystemWebProxy() GetSystemWebProxy() GetSystemWebProxy() GetSystemWebProxy()

Restituisce un proxy configurato con le impostazioni di Internet Explorer dell'utente rappresentato correntemente.Returns a proxy configured with the Internet Explorer settings of the currently impersonated user.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate) RegisterPortableWebRequestCreator(IWebRequestCreate)

Registra un oggetto IWebRequestCreate.Register an IWebRequestCreate object.

RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate) RegisterPrefix(String, IWebRequestCreate)

Registra un discendente WebRequest per l'URI specificato.Registers a WebRequest descendant for the specified URI.

ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Implementazioni dell'interfaccia esplicita

ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Quando viene sottoposto a override in una classe discendente, compila un'istanza di SerializationInfo con i dati necessari a serializzare WebRequest.When overridden in a descendant class, populates a SerializationInfo instance with the data needed to serialize the WebRequest.

Sicurezza

WebPermission
Per accedere a qualsiasi URI che la richiesta viene reindirizzata a o l'URI richiesto.To access the requested URI or any URI that the request is redirected to. Enumerazione associata: Connect.Associated enumeration: Connect.

Si applica a

Vedi anche