Condividi tramite


HttpWebRequest.AddRange Metodo

Definizione

Aggiunge un'intestazione di intervallo alla richiesta.

Overload

AddRange(Int32)

Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

AddRange(Int64)

Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

AddRange(Int32, Int32)

Aggiunge un'intestazione di intervallo di byte alla richiesta di un intervallo specificato.

AddRange(Int64, Int64)

Aggiunge un'intestazione di intervallo di byte alla richiesta di un intervallo specificato.

AddRange(String, Int32)

Aggiunge un'intestazione Range a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

AddRange(String, Int64)

Aggiunge un'intestazione Range a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

AddRange(String, Int32, Int32)

Aggiunge un'intestazione di intervallo a una richiesta per un intervallo specificato.

AddRange(String, Int64, Int64)

Aggiunge un'intestazione di intervallo a una richiesta per un intervallo specificato.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

AddRange(Int32)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

public:
 void AddRange(int range);
public void AddRange (int range);
member this.AddRange : int -> unit
Public Sub AddRange (range As Integer)

Parametri

range
Int32

Punto iniziale o finale dell'intervallo.

Eccezioni

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Esempio

Nell'esempio di codice seguente viene aggiunta un'intestazione di intervallo alla richiesta.

// Create a New 'HttpWebRequest' object.
HttpWebRequest^ myHttpWebRequest1 = 
    (HttpWebRequest^)( WebRequest::Create( "http://www.contoso.com" ) );
myHttpWebRequest1->AddRange( 1000);
Console::WriteLine("Call AddRange(1000)");
      Console::Write("Resulting Headers: ");
      Console::WriteLine(myHttpWebRequest1->Headers);

HttpWebRequest^ myHttpWebRequest2 = 
    (HttpWebRequest^)( WebRequest::Create( "http://www.contoso.com" ) );
myHttpWebRequest2->AddRange(-1000);
Console::WriteLine("Call AddRange(-1000)");
      Console::Write("Resulting Headers: ");
      Console::WriteLine(myHttpWebRequest2->Headers);
// Create a New 'HttpWebRequest' object .
HttpWebRequest myHttpWebRequest1=(HttpWebRequest)WebRequest.Create("http://www.contoso.com");
myHttpWebRequest1.AddRange(1000);	
Console.WriteLine("Call AddRange(1000)");
Console.Write("Resulting Headers: ");
Console.WriteLine(myHttpWebRequest1.Headers.ToString());

// Create a New 'HttpWebRequest' object .
HttpWebRequest myHttpWebRequest2=(HttpWebRequest)WebRequest.Create("http://www.contoso.com");
myHttpWebRequest2.AddRange(-1000);	
Console.WriteLine("Call AddRange(-1000)");
Console.Write("Resulting Headers: ");
Console.WriteLine(myHttpWebRequest2.Headers.ToString());
' A New 'HttpWebRequest' object is created.
Dim myHttpWebRequest1 As HttpWebRequest = WebRequest.Create("http://www.contoso.com")
myHttpWebRequest1.AddRange(1000)
Console.WriteLine("Call AddRange(1000)")
      Console.Write("Resulting Headers: ")
      Console.WriteLine(myHttpWebRequest1.Headers.ToString())

Dim myHttpWebRequest2 As HttpWebRequest = WebRequest.Create("http://www.contoso.com")
myHttpWebRequest2.AddRange(-1000)
Console.WriteLine("Call AddRange(-1000)")
      Console.Write("Resulting Headers: ")
      Console.WriteLine(myHttpWebRequest2.Headers.ToString())

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione di intervallo di byte alla richiesta.

Se range è positivo, il parametro range specifica il punto iniziale dell'intervallo. Il server deve iniziare a inviare dati dal parametro range specificato alla fine dei dati nell'entità HTTP.

Se range è negativo, il parametro range specifica il punto finale dell'intervallo. Il server deve iniziare a inviare dati dall'inizio dei dati nell'entità HTTP al parametro range specificato.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede al server di inviare i primi 100 byte (dall'inizio alla posizione di byte 99) sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro range sarà -99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(Int64)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo di byte a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

public:
 void AddRange(long range);
public void AddRange (long range);
member this.AddRange : int64 -> unit
Public Sub AddRange (range As Long)

Parametri

range
Int64

Punto iniziale o finale dell'intervallo.

Eccezioni

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione di intervallo di byte alla richiesta.

Se range è positivo, il parametro range specifica il punto iniziale dell'intervallo. Il server deve iniziare a inviare dati dal parametro range specificato alla fine dei dati nell'entità HTTP.

Se range è negativo, il parametro range specifica il punto finale dell'intervallo. Il server deve iniziare a inviare dati dall'inizio dei dati nell'entità HTTP al parametro range specificato.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede al server di inviare i primi 100 byte (dall'inizio alla posizione di byte 99) sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro range sarà -99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(Int32, Int32)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo di byte alla richiesta di un intervallo specificato.

public:
 void AddRange(int from, int to);
public void AddRange (int from, int to);
member this.AddRange : int * int -> unit
Public Sub AddRange (from As Integer, to As Integer)

Parametri

from
Int32

Posizione in cui iniziare a inviare i dati.

to
Int32

Posizione in cui interrompere l'invio dei dati.

Eccezioni

rangeSpecifier non è valido.

from è maggiore di to

-o-

from o to è minore di 0.

Impossibile aggiungere l'intestazione dell'intervallo.

Esempio

Nell'esempio di codice seguente viene aggiunta un'intestazione di intervallo alla richiesta.

// Create a New 'HttpWebRequest' object.
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( "http://www.contoso.com" ) );
myHttpWebRequest->AddRange( 50, 150 );
Console::WriteLine("Call AddRange(50, 150)");
      Console::Write("Resulting Request Headers: ");
      Console::WriteLine(myHttpWebRequest->Headers);

// Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );

// Displays the headers in the response received
Console::Write("Resulting Response Headers: ");
      Console::WriteLine(myHttpWebResponse->Headers);

// Display the contents of the page to the console.
Stream^ streamResponse = myHttpWebResponse->GetResponseStream();
StreamReader^ streamRead = gcnew StreamReader( streamResponse );
array<Char>^ readBuffer = gcnew array<Char>(256);
int count = streamRead->Read( readBuffer, 0, 256 );
Console::WriteLine( "\nThe HTML contents of the page from 50th to 150 charaters are :\n  " );
while ( count > 0 )
{
   String^ outputData = gcnew String( readBuffer,0,count );
   Console::WriteLine( outputData );
   count = streamRead->Read( readBuffer, 0, 256 );
}
streamRead->Close();
streamResponse->Close();
myHttpWebResponse->Close();
      // Create a New 'HttpWebRequest' object .
      HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create("http://www.contoso.com");
      myHttpWebRequest.AddRange(50,150);	
      Console.WriteLine("Call AddRange(50,150)");
      Console.Write("Resulting Request Headers: ");
      Console.WriteLine(myHttpWebRequest.Headers.ToString());

      // Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
      HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse();

// Displays the headers in the response received
Console.Write("Resulting Response Headers: ");
      Console.WriteLine(myHttpWebResponse.Headers.ToString());

      // Display the contents of the page to the console.
      Stream streamResponse=myHttpWebResponse.GetResponseStream();
      StreamReader streamRead = new StreamReader( streamResponse );
      Char[] readBuffer = new Char[256];
      int count = streamRead.Read( readBuffer, 0, 256 );
      Console.WriteLine("\nThe HTML contents of the page from 50th to 150 characters are :\n  ");	
      while (count > 0)
      {
          String outputData = new String(readBuffer, 0, count);
          Console.WriteLine(outputData);
          count = streamRead.Read(readBuffer, 0, 256);
      }
      // Release the response object resources.
      streamRead.Close();
      streamResponse.Close();
      myHttpWebResponse.Close();
' A New 'HttpWebRequest' objetc is created.
Dim myHttpWebRequest As HttpWebRequest = WebRequest.Create("http://www.contoso.com")
myHttpWebRequest.AddRange(50, 150)
Console.WriteLine("Call AddRange(50, 150)")
      Console.Write("Resulting Request Headers: ")
      Console.WriteLine(myHttpWebRequest.Headers.ToString())

' The response object of 'HttpWebRequest' is assigned to a 'HttpWebResponse' variable.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)

' Displays the headers in the response received
Console.Write("Resulting Response Headers: ")
      Console.WriteLine(myHttpWebResponse.Headers.ToString())

' Displaying the contents of the page to the console
Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
Dim streamRead As New StreamReader(streamResponse)
Dim readBuffer(256) As [Char]
Dim count As Integer = streamRead.Read(readBuffer, 0, 256)
Console.WriteLine(ControlChars.Cr + "The HTML contents of the page from 50th to 150 charaters are :" + ControlChars.Cr + "  ")
While count > 0
    Dim outputData As New [String](readBuffer, 0, count)
    Console.WriteLine(outputData)
    count = streamRead.Read(readBuffer, 0, 256)
End While
' Release the response object resources.
 streamRead.Close()
 streamResponse.Close()
myHttpWebResponse.Close()

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione di intervallo di byte alla richiesta.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro from verrebbe specificato come 0 e il parametro to verrebbe specificato come 99. L'identificatore di intervallo viene impostato automaticamente come "byte" da questo metodo.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(Int64, Int64)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo di byte alla richiesta di un intervallo specificato.

public:
 void AddRange(long from, long to);
public void AddRange (long from, long to);
member this.AddRange : int64 * int64 -> unit
Public Sub AddRange (from As Long, to As Long)

Parametri

from
Int64

Posizione in cui iniziare a inviare i dati.

to
Int64

Posizione in cui interrompere l'invio dei dati.

Eccezioni

rangeSpecifier non è valido.

from è maggiore di to

-o-

from o to è minore di 0.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione di intervallo di byte alla richiesta.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro from verrebbe specificato come 0 e il parametro to verrebbe specificato come 99. L'identificatore di intervallo viene impostato automaticamente come "byte" da questo metodo.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(String, Int32)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione Range a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

public:
 void AddRange(System::String ^ rangeSpecifier, int range);
public void AddRange (string rangeSpecifier, int range);
member this.AddRange : string * int -> unit
Public Sub AddRange (rangeSpecifier As String, range As Integer)

Parametri

rangeSpecifier
String

Descrizione dell'intervallo.

range
Int32

Punto iniziale o finale dell'intervallo.

Eccezioni

rangeSpecifier è null.

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione Range alla richiesta.

Se range è positivo, il parametro range specifica il punto iniziale dell'intervallo. Il server deve iniziare a inviare dati dal parametro range specificato alla fine dei dati nell'entità HTTP.

Se range è negativo, il parametro range specifica il punto finale dell'intervallo. Il server deve iniziare a inviare dati dall'inizio dei dati nell'entità HTTP al parametro range specificato.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Il parametro rangeSpecifier viene in genere specificato come "byte", poiché si tratta dell'unico identificatore di intervallo riconosciuto dalla maggior parte dei server HTTP. L'impostazione del parametro rangeSpecifier su un'altra stringa consente il supporto per gli identificatori di intervallo personalizzati diversi dai byte (l'identificatore di intervallo di byte definito in RFC 2616 da IETF).

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=-99\r\n\r\n

Per questo esempio, il parametro rangeSpecifier verrebbe specificato come "byte" e il parametro range sarà -99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges nella risposta. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(String, Int64)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione Range a una richiesta per un intervallo specifico dall'inizio o dalla fine dei dati richiesti.

public:
 void AddRange(System::String ^ rangeSpecifier, long range);
public void AddRange (string rangeSpecifier, long range);
member this.AddRange : string * int64 -> unit
Public Sub AddRange (rangeSpecifier As String, range As Long)

Parametri

rangeSpecifier
String

Descrizione dell'intervallo.

range
Int64

Punto iniziale o finale dell'intervallo.

Eccezioni

rangeSpecifier è null.

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione Range alla richiesta.

Se range è positivo, il parametro range specifica il punto iniziale dell'intervallo. Il server deve iniziare a inviare dati dal parametro range specificato alla fine dei dati nell'entità HTTP.

Se range è negativo, il parametro range specifica il punto finale dell'intervallo. Il server deve iniziare a inviare dati dall'inizio dei dati nell'entità HTTP al parametro range specificato.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Il parametro rangeSpecifier viene in genere specificato come "byte", poiché si tratta dell'unico identificatore di intervallo riconosciuto dalla maggior parte dei server HTTP. L'impostazione del parametro rangeSpecifier su un'altra stringa consente il supporto per gli identificatori di intervallo personalizzati diversi dai byte (l'identificatore di intervallo di byte definito in RFC 2616 da IETF).

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=-99\r\n\r\n

Per questo esempio, il parametro rangeSpecifier verrebbe specificato come "byte" e il parametro range sarà -99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges nella risposta. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(String, Int32, Int32)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo a una richiesta per un intervallo specificato.

public:
 void AddRange(System::String ^ rangeSpecifier, int from, int to);
public void AddRange (string rangeSpecifier, int from, int to);
member this.AddRange : string * int * int -> unit
Public Sub AddRange (rangeSpecifier As String, from As Integer, to As Integer)

Parametri

rangeSpecifier
String

Descrizione dell'intervallo.

from
Int32

Posizione in cui iniziare a inviare i dati.

to
Int32

Posizione in cui interrompere l'invio dei dati.

Eccezioni

rangeSpecifier è null.

from è maggiore di to

-o-

from o to è minore di 0.

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione Range alla richiesta.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Il parametro rangeSpecifier viene in genere specificato come "byte", poiché si tratta dell'unico identificatore di intervallo riconosciuto dalla maggior parte dei server HTTP. L'impostazione del parametro rangeSpecifier su un'altra stringa consente il supporto per gli identificatori di intervallo personalizzati diversi dai byte (l'identificatore di intervallo di byte definito in RFC 2616 da IETF).

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro rangeSpecifier verrebbe specificato come "byte", il parametro from sarà 0 e il parametro to sarà 99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges nella risposta. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

La stringa specificata nell'intestazione Accept-Ranges è l'identificatore di intervallo che verrebbe specificato nel parametro rangeSpecifier per questo metodo.

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a

AddRange(String, Int64, Int64)

Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs
Origine:
HttpWebRequest.cs

Aggiunge un'intestazione di intervallo a una richiesta per un intervallo specificato.

public:
 void AddRange(System::String ^ rangeSpecifier, long from, long to);
public void AddRange (string rangeSpecifier, long from, long to);
member this.AddRange : string * int64 * int64 -> unit
Public Sub AddRange (rangeSpecifier As String, from As Long, to As Long)

Parametri

rangeSpecifier
String

Descrizione dell'intervallo.

from
Int64

Posizione in cui iniziare a inviare i dati.

to
Int64

Posizione in cui interrompere l'invio dei dati.

Eccezioni

rangeSpecifier è null.

from è maggiore di to

-o-

from o to è minore di 0.

rangeSpecifier non è valido.

Impossibile aggiungere l'intestazione dell'intervallo.

Commenti

Cautela

WebRequest, HttpWebRequest, ServicePointe WebClient sono obsoleti e non è consigliabile usarli per nuovi sviluppi. Usare invece HttpClient.

Il metodo HttpWebRequest.AddRange aggiunge un'intestazione Range alla richiesta.

Poiché tutte le entità HTTP sono rappresentate nei messaggi HTTP come sequenze di byte, il concetto di intervallo di byte è significativo per qualsiasi entità HTTP. Tuttavia, non tutti i client e i server devono supportare operazioni di intervallo di byte.

L'intestazione Range in una richiesta consente a un client di richiedere che riceva solo una parte dell'intervallo di byte specificato in un'entità HTTP. I server non sono necessari per supportare le richieste di intestazione intervallo.

Il parametro rangeSpecifier viene in genere specificato come "byte", poiché si tratta dell'unico identificatore di intervallo riconosciuto dalla maggior parte dei server HTTP. L'impostazione del parametro rangeSpecifier su un'altra stringa consente il supporto per gli identificatori di intervallo personalizzati diversi dai byte (l'identificatore di intervallo di byte definito in RFC 2616 da IETF).

Un esempio di intestazione Range in una richiesta di protocollo HTTP che richiede i primi 100 byte sarà il seguente:

Range: bytes=0-99\r\n\r\n

Per questo esempio, il parametro rangeSpecifier verrebbe specificato come "byte", il parametro from sarà 0 e il parametro to sarà 99.

Un server HTTP indica il supporto per le intestazioni Range con l'intestazione Accept-Ranges nella risposta. Un esempio dell'intestazione Accept-Ranges da un server che supporta intervalli di byte sarà il seguente:

Accept-Ranges: bytes\r\n\r\n

La stringa specificata nell'intestazione Accept-Ranges è l'identificatore di intervallo che verrebbe specificato nel parametro rangeSpecifier per questo metodo.

Se un'intestazione Accept-Ranges non viene ricevuta nell'intestazione della risposta dal server, il server non supporta le intestazioni di intervallo. Un esempio dell'intestazione Accept-Ranges da un server che non supporta gli intervalli, ma riconosce l'intestazione Accept-Ranges, sarà la seguente:

Accept-Ranges: none\r\n\r\n

Quando si riceve la risposta da una richiesta di intervallo, vengono analizzate e rese disponibili solo le intestazioni HTTP associate all'intera richiesta tramite le proprietà della classe HttpWebResponse. Le intestazioni associate a ogni intervallo vengono restituite nella risposta.

Vedi anche

Si applica a