WebClient Classe
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce metodi comuni per l'invio e la ricezione di dati da una risorsa identificata da un URI.
public ref class WebClient : System::ComponentModel::Component
public ref class WebClient sealed : System::ComponentModel::Component
public class WebClient : System.ComponentModel.Component
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class WebClient : System.ComponentModel.Component
[System.Runtime.InteropServices.ComVisible(true)]
public class WebClient : System.ComponentModel.Component
type WebClient = class
inherit Component
[<System.Runtime.InteropServices.ComVisible(true)>]
type WebClient = class
inherit Component
Public Class WebClient
Inherits Component
Public NotInheritable Class WebClient
Inherits Component
- Ereditarietà
- Attributi
L'esempio di codice seguente accetta l'URI di una risorsa, lo recupera e visualizza la risposta.
#using <System.dll>
using namespace System;
using namespace System::Net;
using namespace System::IO;
int main()
{
array<String^>^args = Environment::GetCommandLineArgs();
if ( args == nullptr || args->Length == 1 )
{
throw gcnew ApplicationException( "Specify the URI of the resource to retrieve." );
}
WebClient^ client = gcnew WebClient;
// Add a user agent header in case the
// requested URI contains a query.
client->Headers->Add( "user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)" );
Stream^ data = client->OpenRead( args[ 1 ] );
StreamReader^ reader = gcnew StreamReader( data );
String^ s = reader->ReadToEnd();
Console::WriteLine( s );
data->Close();
reader->Close();
delete client;
}
using System;
using System.Net;
using System.IO;
public class Test
{
public static void Main(string[] args)
{
if (args == null || args.Length == 0)
{
throw new ApplicationException("Specify the URI of the resource to retrieve.");
}
using WebClient client = new WebClient();
// Add a user agent header in case the
// requested URI contains a query.
client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
using Stream data = client.OpenRead(args[0]);
using StreamReader reader = new StreamReader(data);
string s = reader.ReadToEnd();
Console.WriteLine(s);
}
}
Imports System.Net
Imports System.IO
Public Class Test
Public Shared Sub Main(args() As String)
If args Is Nothing OrElse args.Length = 0 Then
Throw New ApplicationException("Specify the URI of the resource to retrieve.")
End If
Using client As New WebClient()
' Add a user agent header in case the
' requested URI contains a query.
client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)")
Using data As Stream = client.OpenRead(args(0))
Using reader As New StreamReader(data)
Dim s As String = reader.ReadToEnd()
Console.WriteLine(s)
End Using
End Using
End Using
End Sub
End Class
Attenzione
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.
La classe WebClient fornisce metodi comuni per l'invio o la ricezione di dati da qualsiasi risorsa locale, Intranet o Internet identificata da un URI.
La classe WebClient usa la classe WebRequest per fornire l'accesso alle risorse. WebClient istanze possono accedere ai dati con qualsiasi discendente WebRequest registrato con il metodo WebRequest.RegisterPrefix.
Nota
Per impostazione predefinita, .NET Framework supporta gli URI che iniziano con http:
, https:
, ftp:
e gli identificatori dello schema di file:
.
Nella tabella seguente vengono descritti WebClient metodi per il caricamento dei dati in una risorsa.
Metodo | Descrizione |
---|---|
OpenWrite | Recupera un Stream utilizzato per inviare dati alla risorsa. |
OpenWriteAsync | Recupera un Stream utilizzato per inviare dati alla risorsa, senza bloccare il thread chiamante. |
UploadData | Invia una matrice di byte alla risorsa e restituisce una matrice Byte contenente qualsiasi risposta. |
UploadDataAsync | Invia una matrice Byte alla risorsa, senza bloccare il thread chiamante. |
UploadFile | Invia un file locale alla risorsa e restituisce una matrice Byte contenente qualsiasi risposta. |
UploadFileAsync | Invia un file locale alla risorsa, senza bloccare il thread chiamante. |
UploadValues | Invia un NameValueCollection alla risorsa e restituisce una matrice di Byte contenente qualsiasi risposta. |
UploadValuesAsync | Invia un NameValueCollection alla risorsa e restituisce una matrice di Byte contenente qualsiasi risposta, senza bloccare il thread chiamante. |
UploadString | Invia un String alla risorsa e restituisce un String contenente qualsiasi risposta. |
UploadStringAsync | Invia un String alla risorsa, senza bloccare il thread chiamante. |
Nella tabella seguente vengono descritti WebClient metodi per il download dei dati da una risorsa.
Metodo | Descrizione |
---|---|
OpenRead | Restituisce i dati di una risorsa come Stream. |
OpenReadAsync | Restituisce i dati da una risorsa, senza bloccare il thread chiamante. |
DownloadData | Scarica i dati da una risorsa e restituisce una matrice di Byte. |
DownloadDataAsync | Scarica i dati da una risorsa e restituisce una matrice di Byte, senza bloccare il thread chiamante. |
DownloadFile | Scarica i dati da una risorsa in un file locale. |
DownloadFileAsync | Scarica i dati da una risorsa a un file locale, senza bloccare il thread chiamante. |
DownloadString | Scarica un String da una risorsa e restituisce un String. |
DownloadStringAsync | Scarica un String da una risorsa, senza bloccare il thread chiamante. |
È possibile usare il metodo CancelAsync per tentare di annullare le operazioni asincrone.
Un'istanza di WebClient non invia intestazioni HTTP facoltative per impostazione predefinita. Se la richiesta richiede un'intestazione facoltativa, è necessario aggiungere l'intestazione alla raccolta Headers. Ad esempio, per conservare le query nella risposta, è necessario aggiungere un'intestazione user-agent. Inoltre, i server possono restituire 500 (errore interno del server) se l'intestazione dell'agente utente non è presente.
AllowAutoRedirect è impostato su true
nelle istanze di WebClient.
Le classi derivate devono chiamare l'implementazione della classe base di WebClient per garantire che la classe derivata funzioni come previsto.
Web |
Obsoleti.
Inizializza una nuova istanza della classe WebClient. |
Allow |
Obsoleti.
Ottiene o imposta un valore che indica se memorizzare nel buffer i dati letti dalla risorsa Internet per un'istanza di WebClient. |
Allow |
Obsoleti.
Ottiene o imposta un valore che indica se memorizzare nel buffer i dati scritti nella risorsa Internet per un'istanza di WebClient. |
Base |
Ottiene o imposta l'URI di base per le richieste effettuate da un WebClient. |
Cache |
Ottiene o imposta i criteri della cache dell'applicazione per le risorse ottenute da questa istanza WebClient usando WebRequest oggetti . |
Can |
Ottiene un valore che indica se il componente può generare un evento. (Ereditato da Component) |
Container |
Ottiene il IContainer che contiene il Component. (Ereditato da Component) |
Credentials |
Ottiene o imposta le credenziali di rete inviate all'host e usate per autenticare la richiesta. |
Design |
Ottiene un valore che indica se la Component è attualmente in modalità progettazione. (Ereditato da Component) |
Encoding |
Ottiene o imposta il Encoding utilizzato per caricare e scaricare stringhe. |
Events |
Ottiene l'elenco dei gestori eventi associati a questo Component. (Ereditato da Component) |
Headers |
Ottiene o imposta una raccolta di coppie nome/valore di intestazione associate alla richiesta. |
Is |
Ottiene un valore che indica se una richiesta Web è in corso. |
Proxy |
Ottiene o imposta il proxy utilizzato da questo oggetto WebClient. |
Query |
Ottiene o imposta una raccolta di coppie nome/valore di query associate alla richiesta. |
Response |
Ottiene una raccolta di coppie nome/valore di intestazione associate alla risposta. |
Site |
Ottiene o imposta il ISite del Component. (Ereditato da Component) |
Use |
Ottiene o imposta un valore Boolean che controlla se i DefaultCredentials vengono inviati con le richieste. |
Cancel |
Annulla un'operazione asincrona in sospeso. |
Create |
Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto. (Ereditato da MarshalByRefObject) |
Dispose() |
Rilascia tutte le risorse usate dal Component. (Ereditato da Component) |
Dispose(Boolean) |
Rilascia le risorse non gestite usate dal Component e, facoltativamente, rilascia le risorse gestite. (Ereditato da Component) |
Download |
Scarica la risorsa come matrice di Byte dall'URI specificato. |
Download |
Scarica la risorsa come matrice di Byte dall'URI specificato. |
Download |
Scarica la risorsa come matrice di Byte dall'URI specificato come operazione asincrona. |
Download |
Scarica la risorsa come matrice di Byte dall'URI specificato come operazione asincrona. |
Download |
Scarica la risorsa come matrice Byte dall'URI specificato come operazione asincrona usando un oggetto attività. |
Download |
Scarica la risorsa come matrice Byte dall'URI specificato come operazione asincrona usando un oggetto attività. |
Download |
Scarica la risorsa con l'URI specificato in un file locale. |
Download |
Scarica la risorsa con l'URI specificato in un file locale. |
Download |
Scarica, in un file locale, la risorsa con l'URI specificato. Questo metodo non blocca il thread chiamante. |
Download |
Scarica, in un file locale, la risorsa con l'URI specificato. Questo metodo non blocca il thread chiamante. |
Download |
Scarica la risorsa specificata in un file locale come operazione asincrona usando un oggetto attività. |
Download |
Scarica la risorsa specificata in un file locale come operazione asincrona usando un oggetto attività. |
Download |
Scarica la risorsa richiesta come String. La risorsa da scaricare viene specificata come String contenente l'URI. |
Download |
Scarica la risorsa richiesta come String. La risorsa da scaricare viene specificata come Uri. |
Download |
Scarica la risorsa specificata come Uri. Questo metodo non blocca il thread chiamante. |
Download |
Scarica la stringa specificata nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Download |
Scarica la risorsa come String dall'URI specificato come operazione asincrona usando un oggetto attività. |
Download |
Scarica la risorsa come String dall'URI specificato come operazione asincrona usando un oggetto attività. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Get |
Funge da funzione hash predefinita. (Ereditato da Object) |
Get |
Obsoleti.
Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
Get |
Restituisce un oggetto che rappresenta un servizio fornito dal Component o dal relativo Container. (Ereditato da Component) |
Get |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
Get |
Restituisce un oggetto WebRequest per la risorsa specificata. |
Get |
Restituisce il WebResponse per il WebRequestspecificato. |
Get |
Restituisce il WebResponse per il WebRequest specificato utilizzando il IAsyncResultspecificato. |
Initialize |
Obsoleti.
Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza. (Ereditato da MarshalByRefObject) |
Memberwise |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
Memberwise |
Crea una copia superficiale dell'oggetto MarshalByRefObject corrente. (Ereditato da MarshalByRefObject) |
On |
Genera l'evento DownloadDataCompleted. |
On |
Genera l'evento DownloadFileCompleted. |
On |
Genera l'evento DownloadProgressChanged. |
On |
Genera l'evento DownloadStringCompleted. |
On |
Genera l'evento OpenReadCompleted. |
On |
Genera l'evento OpenWriteCompleted. |
On |
Genera l'evento UploadDataCompleted. |
On |
Genera l'evento UploadFileCompleted. |
On |
Genera l'evento UploadProgressChanged. |
On |
Genera l'evento UploadStringCompleted. |
On |
Genera l'evento UploadValuesCompleted. |
On |
Obsoleti.
Genera l'evento WriteStreamClosed. |
Open |
Apre un flusso leggibile per i dati scaricati da una risorsa con l'URI specificato come String. |
Open |
Apre un flusso leggibile per i dati scaricati da una risorsa con l'URI specificato come Uri. |
Open |
Apre un flusso leggibile contenente la risorsa specificata. Questo metodo non blocca il thread chiamante. |
Open |
Apre un flusso leggibile contenente la risorsa specificata. Questo metodo non blocca il thread chiamante. |
Open |
Apre un flusso leggibile contenente la risorsa specificata come operazione asincrona usando un oggetto attività. |
Open |
Apre un flusso leggibile contenente la risorsa specificata come operazione asincrona usando un oggetto attività. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata utilizzando il metodo specificato. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata utilizzando il metodo specificato. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata utilizzando il metodo specificato. Questo metodo non blocca il thread chiamante. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Open |
Apre un flusso per la scrittura di dati nella risorsa specificata come operazione asincrona usando un oggetto attività. |
To |
Restituisce un String contenente il nome del Component, se presente. Questo metodo non deve essere sottoposto a override. (Ereditato da Component) |
Upload |
Carica un buffer di dati in una risorsa identificata da un URI. |
Upload |
Carica un buffer di dati nella risorsa specificata usando il metodo specificato. |
Upload |
Carica un buffer di dati in una risorsa identificata da un URI. |
Upload |
Carica un buffer di dati nella risorsa specificata usando il metodo specificato. |
Upload |
Carica un buffer di dati in una risorsa identificata da un URI, usando il metodo POST. Questo metodo non blocca il thread chiamante. |
Upload |
Carica un buffer di dati in una risorsa identificata da un URI, usando il metodo specificato. Questo metodo non blocca il thread chiamante. |
Upload |
Carica un buffer di dati in una risorsa identificata da un URI, usando il metodo specificato e il token di identificazione. |
Upload |
Carica un buffer di dati che contiene una matrice di Byte nell'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica un buffer di dati che contiene una matrice di Byte nell'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica un buffer di dati che contiene una matrice di Byte nell'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica un buffer di dati che contiene una matrice di Byte nell'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica il file locale specificato in una risorsa con l'URI specificato. |
Upload |
Carica il file locale specificato nella risorsa specificata usando il metodo specificato. |
Upload |
Carica il file locale specificato in una risorsa con l'URI specificato. |
Upload |
Carica il file locale specificato nella risorsa specificata usando il metodo specificato. |
Upload |
Carica il file locale specificato nella risorsa specificata, usando il metodo POST. Questo metodo non blocca il thread chiamante. |
Upload |
Carica il file locale specificato nella risorsa specificata, usando il metodo POST. Questo metodo non blocca il thread chiamante. |
Upload |
Carica il file locale specificato nella risorsa specificata, usando il metodo POST. Questo metodo non blocca il thread chiamante. |
Upload |
Carica il file locale specificato in una risorsa come operazione asincrona usando un oggetto attività. |
Upload |
Carica il file locale specificato in una risorsa come operazione asincrona usando un oggetto attività. |
Upload |
Carica il file locale specificato in una risorsa come operazione asincrona usando un oggetto attività. |
Upload |
Carica il file locale specificato in una risorsa come operazione asincrona usando un oggetto attività. |
Upload |
Carica la stringa specificata nella risorsa specificata, usando il metodo POST. |
Upload |
Carica la stringa specificata nella risorsa specificata usando il metodo specificato. |
Upload |
Carica la stringa specificata nella risorsa specificata, usando il metodo POST. |
Upload |
Carica la stringa specificata nella risorsa specificata usando il metodo specificato. |
Upload |
Carica la stringa specificata nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Upload |
Carica la stringa specificata nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Upload |
Carica la stringa specificata nella risorsa specificata. Questo metodo non blocca il thread chiamante. |
Upload |
Carica la stringa specificata nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Upload |
Carica la stringa specificata nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Upload |
Carica la stringa specificata nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Upload |
Carica la stringa specificata nella risorsa specificata come operazione asincrona usando un oggetto attività. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato, usando il metodo specificato. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato, usando il metodo specificato. |
Upload |
Carica i dati nella raccolta nome/valore specificata nella risorsa identificata dall'URI specificato. Questo metodo non blocca il thread chiamante. |
Upload |
Carica i dati nella raccolta nome/valore specificata nella risorsa identificata dall'URI specificato, usando il metodo specificato. Questo metodo non blocca il thread chiamante. |
Upload |
Carica i dati nella raccolta nome/valore specificata nella risorsa identificata dall'URI specificato, usando il metodo specificato. Questo metodo non blocca il thread chiamante e consente al chiamante di passare un oggetto al metodo richiamato al termine dell'operazione. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato come operazione asincrona usando un oggetto attività. |
Upload |
Carica la raccolta nome/valore specificata nella risorsa identificata dall'URI specificato come operazione asincrona usando un oggetto attività. |
Disposed |
Si verifica quando il componente viene eliminato da una chiamata al metodo Dispose(). (Ereditato da Component) |
Download |
Si verifica quando viene completata un'operazione di download dei dati asincrona. |
Download |
Si verifica quando viene completata un'operazione di download di file asincrona. |
Download |
Si verifica quando un'operazione di download asincrona trasferisce correttamente alcuni o tutti i dati. |
Download |
Si verifica quando viene completata un'operazione asincrona di download delle risorse. |
Open |
Si verifica quando viene completata un'operazione asincrona per aprire un flusso contenente una risorsa. |
Open |
Si verifica quando un'operazione asincrona per aprire un flusso per scrivere dati in una risorsa viene completata. |
Upload |
Si verifica quando viene completata un'operazione asincrona di caricamento dei dati. |
Upload |
Si verifica quando viene completata un'operazione asincrona di caricamento di file. |
Upload |
Si verifica quando un'operazione di caricamento asincrona trasferisce correttamente alcuni o tutti i dati. |
Upload |
Si verifica quando viene completata un'operazione asincrona di caricamento di stringhe. |
Upload |
Si verifica quando viene completato un caricamento asincrono di una raccolta nome/valore. |
Write |
Obsoleti.
Si verifica quando un'operazione asincrona per scrivere dati in una risorsa tramite un flusso di scrittura viene chiusa. |
Prodotto | Versioni |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: