Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale
Questo argomento non è stato ancora valutato - Valuta questo argomento

Classe HttpWebRequest

Fornisce un'implementazione specifica di HTTP della classe WebRequest.

Spazio dei nomi:  System.Net
Assembly:  System (in System.dll)
[SerializableAttribute]
public class HttpWebRequest : WebRequest, 
	ISerializable

Il tipo HttpWebRequest espone i seguenti membri.

  NomeDescrizione
Metodo pubblicoHttpWebRequest() Obsoleta. Inizializza una nuova istanza della classe HttpWebRequest.
Metodo protettoHttpWebRequest(SerializationInfo, StreamingContext) Obsoleta. Inizializza una nuova istanza della classe HttpWebRequest dalle istanze specificate delle classi SerializationInfo e StreamingContext.
In alto
  NomeDescrizione
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreAcceptOttiene o imposta il valore dell'intestazione HTTP Accept.
Proprietà pubblicaAddressOttiene l'URI della risorsa Internet che risponde effettivamente alla richiesta.
Proprietà pubblicaAllowAutoRedirectRecupera o imposta un valore che indica se la richiesta deve seguire le risposte di reindirizzamento.
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreAllowReadStreamBufferingOttiene o imposta un valore che indica se la memorizzazione nel buffer ricevuto dalla risorsa Internet.
Proprietà pubblicaAllowWriteStreamBufferingRecupera o imposta un valore che indica se memorizzare nel buffer i dati inviati alla risorsa Internet.
Proprietà pubblicaAuthenticationLevelOttiene o imposta i valori che indicano il livello di autenticazione e di rappresentazione utilizzati per questa richiesta. (Ereditato da WebRequest)
Proprietà pubblicaAutomaticDecompressionOttiene o imposta il tipo di decompressione utilizzato.
Proprietà pubblicaCachePolicyOttiene o imposta i criteri di cache per questa richiesta. (Ereditato da WebRequest)
Proprietà pubblicaClientCertificatesOttiene o imposta l'insieme dei certificati di sicurezza associati alla richiesta.
Proprietà pubblicaConnectionOttiene o imposta il valore dell'intestazione HTTP Connection.
Proprietà pubblicaConnectionGroupNameOttiene o imposta il nome del gruppo di connessione per la richiesta. (Esegue l'override di WebRequest.ConnectionGroupName).
Proprietà pubblicaContentLengthRecupera o imposta l'intestazione HTTP di Content-length. (Esegue l'override di WebRequest.ContentLength).
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreContentTypeRecupera o imposta il valore dell'intestazione HTTP Content-type. (Esegue l'override di WebRequest.ContentType).
Proprietà pubblicaContinueDelegateRecupera o imposta il metodo delegato chiamato quando da una risorsa Internet viene ricevuta una risposta 100-Continue HTTP.
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreContinueTimeoutOttiene o imposta un intervallo, in secondi, di attendere che lo stato del server dopo 100 continuano vengono ricevuti.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreCookieContainerRecupera o imposta i cookie associati alla richiesta.
Proprietà pubblicaCreatorInstance Obsoleta. Quando viene eseguito l'override in una classe discendente, ottiene l'oggetto factory derivato dalla classe IWebRequestCreate utilizzato per creare la classe istanziata WebRequest per effettuare la richiesta all'URI specificato. (Ereditato da WebRequest)
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreCredentialsOttiene o imposta le informazioni sull'autenticazione per la richiesta. (Esegue l'override di WebRequest.Credentials).
Proprietà pubblicaDateOttiene o imposta il valore dell'intestazione HTTP Date da utilizzare in una richiesta HTTP.
Proprietà pubblicaMembro staticoDefaultCachePolicyOttiene o imposta i criteri di cache predefiniti per questa richiesta.
Proprietà pubblicaMembro staticoDefaultMaximumErrorResponseLengthOttiene o imposta la lunghezza massima predefinita di una risposta di errore HTTP.
Proprietà pubblicaMembro staticoDefaultMaximumResponseHeadersLengthOttiene o imposta il valore predefinito per la proprietà MaximumResponseHeadersLength.
Proprietà pubblicaExpectOttiene o imposta il valore dell'intestazione HTTP Expect.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreHaveResponseOttiene un valore che indica se una risposta è stata ricevuta da una risorsa Internet.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreHeadersSpecifica una raccolta delle coppie nome/valore che compongono le intestazioni HTTP. (Esegue l'override di WebRequest.Headers).
Proprietà pubblicaHostOttiene o imposta il valore dell'intestazione relativa all'host da utilizzare in una richiesta HTTP indipendente dall'URI della richiesta.
Proprietà pubblicaIfModifiedSinceOttiene o imposta il valore dell'intestazione HTTP If-Modified-Since.
Proprietà pubblicaImpersonationLevelOttiene o imposta il livello di rappresentazione per la richiesta corrente. (Ereditato da WebRequest)
Proprietà pubblicaKeepAliveOttiene o imposta un valore che indica se effettuare una connessione permanente alla risorsa Internet.
Proprietà pubblicaMaximumAutomaticRedirectionsOttiene o imposta il numero massimo di reindirizzamenti che la richiesta segue.
Proprietà pubblicaMaximumResponseHeadersLengthOttiene o imposta la lunghezza massima consentita delle intestazioni di risposta.
Proprietà pubblicaMediaTypeRecupera o imposta il tipo di supporto della richiesta.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreMethodRecupera o imposta il metodo per la richiesta. (Esegue l'override di WebRequest.Method).
Proprietà pubblicaPipelinedOttiene o imposta un valore che indica se effettuare il pipeline della richiesta alla risorsa Internet.
Proprietà pubblicaPreAuthenticateOttiene o imposta un valore che indica se inviare un'intestazione di autorizzazione con la richiesta. (Esegue l'override di WebRequest.PreAuthenticate).
Proprietà pubblicaProtocolVersionRecupera o imposta la versione di HTTP da utilizzare per la richiesta.
Proprietà pubblicaProxyRecupera o imposta le informazioni sul proxy per la richiesta. (Esegue l'override di WebRequest.Proxy).
Proprietà pubblicaReadWriteTimeoutOttiene o imposta un timeout in millisecondi quando si scrive in o si legge da un flusso.
Proprietà pubblicaRefererOttiene o imposta il valore dell'intestazione HTTP Referer.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreRequestUriOttiene l'URI originale della richiesta. (Esegue l'override di WebRequest.RequestUri).
Proprietà pubblicaSendChunkedOttiene o imposta un valore che indica se inviare dati in segmenti alla risorsa Internet.
Proprietà pubblicaServerCertificateValidationCallbackOttiene o imposta una funzione di callback per convalidare il certificato server.
Proprietà pubblicaServicePointRecupera il punto di servizio da utilizzare per la richiesta.
Proprietà pubblicaSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreSupportsCookieContainerOttiene un valore che indica se la richiesta fornisce supporto per CookieContainer.
Proprietà pubblicaTimeoutOttiene o imposta il valore di timeout in millisecondi per i metodi GetResponse e GetRequestStream. (Esegue l'override di WebRequest.Timeout).
Proprietà pubblicaTransferEncodingOttiene o imposta il valore dell'intestazione HTTP Transfer-encoding.
Proprietà pubblicaUnsafeAuthenticatedConnectionSharingOttiene o imposta un valore che indica se consentire la condivisione di connessione con autenticazione NTLM ad alta velocità.
Proprietà pubblicaSupportato in .NET per applicazioni Windows StoreUseDefaultCredentialsOttiene o imposta un valore Boolean che controlla se le credenziali predefinite sono inviate con le richieste. (Esegue l'override di WebRequest.UseDefaultCredentials).
Proprietà pubblicaUserAgentOttiene o imposta il valore dell'intestazione HTTP User-agent.
In alto
  NomeDescrizione
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreAbortAnnulla una richiesta a una risorsa Internet. (Esegue l'override di WebRequest.Abort()).
Metodo pubblicoAddRange(Int32)Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico, a partire dall'inizio o dalla fine dei dati richiesti.
Metodo pubblicoAddRange(Int64)Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico, a partire dall'inizio o dalla fine dei dati richiesti.
Metodo pubblicoAddRange(Int32, Int32)Aggiunge un'intestazione di intervallo di byte alla richiesta per un intervallo specifico.
Metodo pubblicoAddRange(Int64, Int64)Aggiunge un'intestazione di intervallo di byte alla richiesta per un intervallo specifico.
Metodo pubblicoAddRange(String, Int32)Aggiunge un'intestazione relativa all'intervallo a una richiesta per un intervallo specifico, a partire dall'inizio o dalla fine dei dati richiesti.
Metodo pubblicoAddRange(String, Int64)Aggiunge un'intestazione relativa all'intervallo a una richiesta per un intervallo specifico, a partire dall'inizio o dalla fine dei dati richiesti.
Metodo pubblicoAddRange(String, Int32, Int32)Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico.
Metodo pubblicoAddRange(String, Int64, Int64)Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico.
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreBeginGetRequestStreamAvvia una richiesta asincrona per un oggetto Stream da utilizzare per la scrittura dei dati. (Esegue l'override di WebRequest.BeginGetRequestStream(AsyncCallback, Object)).
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreBeginGetResponseAvvia una richiesta asincrona a una risorsa Internet. (Esegue l'override di WebRequest.BeginGetResponse(AsyncCallback, Object)).
Metodo pubblicoCreateObjRefCrea un oggetto che contiene tutte le informazioni rilevanti obbligatorio per generare un proxy utilizzato per comunicare con un oggetto remoto. (Ereditato da MarshalByRefObject)
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreEndGetRequestStream(IAsyncResult)Termina una richiesta asincrona per un oggetto Stream da utilizzare per la scrittura dei dati. (Esegue l'override di WebRequest.EndGetRequestStream(IAsyncResult)).
Metodo pubblicoEndGetRequestStream(IAsyncResult, TransportContext)Termina una richiesta asincrona per un oggetto Stream da utilizzare per scrivere dati e restituisce l'oggetto TransportContext associato al flusso.
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreEndGetResponseTermina una richiesta asincrona a una risorsa Internet. (Esegue l'override di WebRequest.EndGetResponse(IAsyncResult)).
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreEquals(Object) Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object)
Metodo protettoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreFinalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreGetHashCodeFunge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblicoGetLifetimeServiceRecupera l'oggetto corrente del servizio di durata che controlla i criteri di durata dell'istanza. (Ereditato da MarshalByRefObject)
Metodo protettoGetObjectDataInfrastruttura. Inserisce una classe SerializationInfo con i dati richiesti per serializzare l'oggetto di destinazione. (Esegue l'override di WebRequest.GetObjectData(SerializationInfo, StreamingContext)).
Metodo pubblicoGetRequestStream()Ottiene un oggetto Stream da utilizzare per scrivere i dati della richiesta. (Esegue l'override di WebRequest.GetRequestStream()).
Metodo pubblicoGetRequestStream(TransportContext)Ottiene un oggetto Stream da utilizzare per scrivere i dati della richiesta e restituisce l'oggetto TransportContext associato al flusso.
Metodo pubblicoSupportato in .NET per applicazioni Windows StoreGetRequestStreamAsyncUna volta eseguito in una classe decrescente, restituisce Stream per la scrittura dei dati alla risorsa Internet come operazione asincrona. (Ereditato da WebRequest)
Metodo pubblicoGetResponseRestituisce una risposta da una risorsa Internet. (Esegue l'override di WebRequest.GetResponse()).
Metodo pubblicoSupportato in .NET per applicazioni Windows StoreGetResponseAsyncUna volta eseguito in una classe decrescente, restituisce una risposta a una richiesta Internet come operazione asincrona. (Ereditato da WebRequest)
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreGetTypeOttiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblicoInitializeLifetimeServiceOttiene un oggetto di servizio di durata per controllare i criteri di durata dell'istanza. (Ereditato da MarshalByRefObject)
Metodo protettoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreMemberwiseClone()Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo protettoMemberwiseClone(Boolean)Crea una copia superficiale corrente MarshalByRefObject oggetto. (Ereditato da MarshalByRefObject)
Metodo pubblicoSupportato da Libreria di classi portabileSupportato in .NET per applicazioni Windows StoreToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
In alto
  NomeDescrizione
Implementazione esplicita dell'interfacciaMetodo privatoISerializable.GetObjectDataInfrastruttura. Compila un oggetto SerializationInfo con i dati necessari per serializzare l'oggetto di destinazione.
In alto

La classe HttpWebRequest fornisce supporto per le proprietà e i metodi definiti in WebRequest e per le proprietà e i metodi aggiuntivi che consentono all'utente di interagire direttamente con i server tramite HTTP.

Non utilizzare il costruttore HttpWebRequest, Utilizzare il metodo WebRequest.Create per inizializzare nuovi oggettiHttpWebRequest. Se lo schema per l'URI (Uniform Resource Identifier) è http:// o https://, il metodoCreate restituisce un oggetto HttpWebRequest.

Il metodo GetResponse effettua una richiesta sincrona alla risorsa specificata nella proprietà RequestUri e restituisce una classe HttpWebResponse contenente la risposta. È possibile effettuare una richiesta asincrona alla risorsa tramite i metodi BeginGetResponse e EndGetResponse.

Per inviare i dati alla risorsa, il metodo GetRequestStream restituisce un oggetto Stream per utilizzare l'invio di dati. I metodi BeginGetRequestStream e EndGetRequestStream forniscono accesso asincrono al flusso di dati da inviare.

Per l'autenticazione client con HttpWebRequest, è necessario installare il certificato client nell'archivio certificati personali dell'utente corrente.

La classe HttpWebRequest genera una classe WebException se si verificano errori durante l'accesso a una risorsa. La proprietà WebException.Status contiene un valore di WebExceptionStatus che indica l'origine dell'errore. Se la proprietà WebException.Status è WebExceptionStatus.ProtocolError, la proprietà Response contiene la classe HttpWebResponse ricevuta dalla risorsa.

HttpWebRequest espone i valori di intestazione HTTP comuni inviati alla risorsa Internet come proprietà impostate da metodi o dal sistema. La tabella che segue ne contiene un elenco completo. È possibile impostare altre intestazioni nella proprietà Headers come coppie nome/valore. Durante la richiesta, le intestazioni possono essere modificate o aggiunte dai server e dalle cache.

Nella tabella che segue sono elencate le intestazioni HTTP impostate da proprietà, da metodi o dal sistema.

Header

Impostata da

Accept

Impostata dalla proprietà Accept.

Connessione

Impostata dalla proprietà Connectione dalla proprietà KeepAlive.

Lunghezza del contenuto

Impostata dalla proprietà ContentLength.

Tipo di contenuto

Impostata dalla proprietà ContentType.

Expect

Impostata dalla proprietà Expect.

Data

Impostata dal sistema sulla data corrente.

Host

Impostata dal sistema sulle informazioni di host correnti.

If-Modified-Since

Impostata dalla proprietà IfModifiedSince.

Intervallo

Impostata dal metodo AddRange.

Referer

Impostata dalla proprietà Referer.

Transfer-Encoding

Impostata dalla proprietà TransferEncoding. La proprietà SendChunked deve essere true.

User-Agent

Impostata dalla proprietà UserAgent.

NotaNota

HttpWebRequest viene registrata automaticamente. Non è necessario chiamare il metodo RegisterPrefix per registrare System.Net.HttpWebRequest prima di utilizzare gli URI che cominciano con http:// o https://.

Il file config dell'applicazione o del computer locale può specificare l'utilizzo di un proxy predefinito. Se è specificata la proprietà Proxy, le impostazioni del proxy dalla proprietà Proxy eseguono l'override del file config dell'applicazione o del computer locale e l'istanza HttpWebRequest utilizzerà le impostazioni del proxy specificate. Se non è specificato alcun proxy in un file config e la proprietà Proxy non è specificata, la classe HttpWebRequest utilizza le impostazioni del proxy ereditate da Internet Explorer sul computer locale. Se in Internet Explorer non sono specificate impostazioni del proxy, la richiesta verrà inviata direttamente al server.

La classe HttpWebRequest analizza un elenco di esclusione del proxy con i caratteri jolly ereditati da Internet Explorer diversamente rispetto all'elenco di esclusione analizzato direttamente da Internet Explorer. La classe HttpWebRequest, ad esempio, analizzerà un elenco di esclusione di "nt*" da Internet Explorer come espressione regolare di "nt.$". Questo comportamento è diverso da quello nativo di Internet Explorer. Un URL di "http://intxxxxx", pertanto, ignora il proxy utilizzando la classe HttpWebRequest, ma non ignora il proxy utilizzando Internet Explorer.

NotaNota

In Framework le sessioni SSL vengono memorizzate nella cache quando vengono create e viene tentato il riutilizzo di una sessione inserita nella cache per una nuova richiesta, se possibile. Durante il tentativo di riutilizzo di una sessione SSL, in Framework viene utilizzato il primo elemento della proprietà ClientCertificates, se presente, oppure viene tentato il riutilizzo di sessioni anonime se la proprietà ClientCertificates è vuota.

NotaNota

Per motivi di sicurezza, i cookie sono disabilitati per impostazione predefinita. Per utilizzare i cookie, ricorrere alla proprietà CookieContainer per attivarli.

Nell'esempio di codice riportato di seguito viene creata una classe HttpWebRequest per l'URI http://www.contoso.com/. (informazioni in lingua inglese).



HttpWebRequest myReq =
(HttpWebRequest)WebRequest.Create("http://www.contoso.com/");



.NET Framework

Supportato in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Libreria di classi portabile

Supportato in: Libreria di classi portabile

.NET per applicazioni Windows Store

Supportato in: Windows 8
  • WebPermission 

    per accedere all'URI richiesto o a qualsiasi URI a cui viene reindirizzata la richiesta. Enumerazione associata: Connect

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Il documento è risultato utile?
(1500 caratteri rimanenti)

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
© 2013 Microsoft. Tutti i diritti riservati.