HttpWebRequest.AddRange Método

Definición

Agrega un encabezado de intervalo a la solicitud.

Sobrecargas

AddRange(Int32)

Agrega un encabezado de intervalo de bytes a una solicitud de un intervalo específico desde el principio o el final de los datos solicitados.

AddRange(Int64)

Agrega un encabezado de intervalo de bytes a una solicitud de un intervalo específico desde el principio o el final de los datos solicitados.

AddRange(Int32, Int32)

Agrega un encabezado de intervalo de bytes a la solicitud de un intervalo especificado.

AddRange(Int64, Int64)

Agrega un encabezado de intervalo de bytes a la solicitud de un intervalo especificado.

AddRange(String, Int32)

Agrega un encabezado Range a una solicitud de un intervalo específico del principio o del final de los datos solicitados.

AddRange(String, Int64)

Agrega un encabezado Range a una solicitud de un intervalo específico del principio o del final de los datos solicitados.

AddRange(String, Int32, Int32)

Agrega un encabezado de intervalo a una solicitud de un intervalo especificado.

AddRange(String, Int64, Int64)

Agrega un encabezado de intervalo a una solicitud de un intervalo especificado.

Comentarios

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

AddRange(Int32)

Agrega un encabezado de intervalo de bytes a una solicitud de un intervalo específico desde el principio o el final de los datos solicitados.

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

Parámetros

range
Int32

Punto inicial o final del intervalo.

Excepciones

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Ejemplos

En el ejemplo de código siguiente se agrega un encabezado de intervalo a la solicitud.

// 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())

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado de intervalo de bytes a la solicitud.

Si range es positivo, el range parámetro especifica el punto inicial del intervalo. El servidor debe empezar a enviar datos desde el range parámetro especificado al final de los datos en la entidad HTTP.

Si range es negativo, el range parámetro especifica el punto final del intervalo. El servidor debe empezar a enviar datos desde el inicio de los datos de la entidad HTTP al range parámetro especificado.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita al servidor enviar los primeros 100 bytes (desde el principio a la posición 99 del byte) sería el siguiente:

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

En este ejemplo, el range parámetro sería -99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(Int64)

Agrega un encabezado de intervalo de bytes a una solicitud de un intervalo específico desde el principio o el final de los datos solicitados.

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

Parámetros

range
Int64

Punto inicial o final del intervalo.

Excepciones

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado de intervalo de bytes a la solicitud.

Si range es positivo, el range parámetro especifica el punto inicial del intervalo. El servidor debe empezar a enviar datos desde el range parámetro especificado al final de los datos en la entidad HTTP.

Si range es negativo, el range parámetro especifica el punto final del intervalo. El servidor debe empezar a enviar datos desde el inicio de los datos de la entidad HTTP al range parámetro especificado.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita al servidor enviar los primeros 100 bytes (desde el principio a la posición 99 del byte) sería el siguiente:

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

En este ejemplo, el range parámetro sería -99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(Int32, Int32)

Agrega un encabezado de intervalo de bytes a la solicitud de un intervalo especificado.

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)

Parámetros

from
Int32

Posición en la que se va a empezar a enviar datos.

to
Int32

Posición en la que se va a terminar de enviar datos.

Excepciones

rangeSpecifier no es válido.

from es mayor que to.

o bien from o to es menor que 0.

No se pudo agregar el encabezado de intervalo.

Ejemplos

En el ejemplo de código siguiente se agrega un encabezado de intervalo a la solicitud.

// 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()

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado de intervalo de bytes a la solicitud.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el from parámetro se especificaría como 0 y el to parámetro se especificaría como 99. Este método establece automáticamente el especificador de intervalo como "bytes".

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(Int64, Int64)

Agrega un encabezado de intervalo de bytes a la solicitud de un intervalo especificado.

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)

Parámetros

from
Int64

Posición en la que se va a empezar a enviar datos.

to
Int64

Posición en la que se va a terminar de enviar datos.

Excepciones

rangeSpecifier no es válido.

from es mayor que to.

o bien from o to es menor que 0.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado de intervalo de bytes a la solicitud.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el from parámetro se especificaría como 0 y el to parámetro se especificaría como 99. Este método establece automáticamente el especificador de intervalo como "bytes".

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(String, Int32)

Agrega un encabezado Range a una solicitud de un intervalo específico del principio o del final de los datos solicitados.

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)

Parámetros

rangeSpecifier
String

Descripción del intervalo.

range
Int32

Punto inicial o final del intervalo.

Excepciones

rangeSpecifier es null.

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado Range a la solicitud.

Si range es positivo, el range parámetro especifica el punto inicial del intervalo. El servidor debe empezar a enviar datos desde el range parámetro especificado al final de los datos en la entidad HTTP.

Si range es negativo, el range parámetro especifica el punto final del intervalo. El servidor debe empezar a enviar datos desde el inicio de los datos de la entidad HTTP al range parámetro especificado.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Normalmente, el rangeSpecifier parámetro se especificaría como "bytes", ya que este es el único especificador de intervalo reconocido por la mayoría de los servidores HTTP. Establecer el rangeSpecifier parámetro en alguna otra cadena permite admitir especificadores de intervalo personalizados distintos de bytes (el especificador de intervalo de bytes definido en RFC 2616 por IETF).

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el rangeSpecifier parámetro se especificaría como "bytes" y el range parámetro sería -99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges en la respuesta. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(String, Int64)

Agrega un encabezado Range a una solicitud de un intervalo específico del principio o del final de los datos solicitados.

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)

Parámetros

rangeSpecifier
String

Descripción del intervalo.

range
Int64

Punto inicial o final del intervalo.

Excepciones

rangeSpecifier es null.

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado Range a la solicitud.

Si range es positivo, el range parámetro especifica el punto inicial del intervalo. El servidor debe empezar a enviar datos desde el range parámetro especificado al final de los datos en la entidad HTTP.

Si range es negativo, el range parámetro especifica el punto final del intervalo. El servidor debe empezar a enviar datos desde el inicio de los datos de la entidad HTTP al range parámetro especificado.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Normalmente, el rangeSpecifier parámetro se especificaría como "bytes", ya que este es el único especificador de intervalo reconocido por la mayoría de los servidores HTTP. Establecer el rangeSpecifier parámetro en alguna otra cadena permite admitir especificadores de intervalo personalizados distintos de bytes (el especificador de intervalo de bytes definido en RFC 2616 por IETF).

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el rangeSpecifier parámetro se especificaría como "bytes" y el range parámetro sería -99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges en la respuesta. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(String, Int32, Int32)

Agrega un encabezado de intervalo a una solicitud de un intervalo especificado.

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)

Parámetros

rangeSpecifier
String

Descripción del intervalo.

from
Int32

Posición en la que se va a empezar a enviar datos.

to
Int32

Posición en la que se va a terminar de enviar datos.

Excepciones

rangeSpecifier es null.

from es mayor que to.

o bien from o to es menor que 0.

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado Range a la solicitud.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Normalmente, el rangeSpecifier parámetro se especificaría como "bytes", ya que este es el único especificador de intervalo reconocido por la mayoría de los servidores HTTP. Establecer el rangeSpecifier parámetro en alguna otra cadena permite admitir especificadores de intervalo personalizados distintos de bytes (el especificador de intervalo de bytes definido en RFC 2616 por IETF).

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el rangeSpecifier parámetro se especificaría como "bytes", el from parámetro sería 0 y el to parámetro sería 99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges en la respuesta. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

La cadena especificada en el encabezado Accept-Ranges es el especificador de intervalo que se especificaría en el rangeSpecifier parámetro para este método.

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a

AddRange(String, Int64, Int64)

Agrega un encabezado de intervalo a una solicitud de un intervalo especificado.

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)

Parámetros

rangeSpecifier
String

Descripción del intervalo.

from
Int64

Posición en la que se va a empezar a enviar datos.

to
Int64

Posición en la que se va a terminar de enviar datos.

Excepciones

rangeSpecifier es null.

from es mayor que to.

o bien from o to es menor que 0.

rangeSpecifier no es válido.

No se pudo agregar el encabezado de intervalo.

Comentarios

El HttpWebRequest.AddRange método agrega un encabezado Range a la solicitud.

Dado que todas las entidades HTTP se representan en mensajes HTTP como secuencias de bytes, el concepto de un intervalo de bytes es significativo para cualquier entidad HTTP. Sin embargo, no todos los clientes y servidores necesitan admitir operaciones de intervalo de bytes.

El encabezado Range de una solicitud permite a un cliente solicitar que solo quiera recibir parte del intervalo de bytes especificado en una entidad HTTP. Los servidores no son necesarios para admitir solicitudes de encabezado range.

Normalmente, el rangeSpecifier parámetro se especificaría como "bytes", ya que este es el único especificador de intervalo reconocido por la mayoría de los servidores HTTP. Establecer el rangeSpecifier parámetro en alguna otra cadena permite admitir especificadores de intervalo personalizados distintos de bytes (el especificador de intervalo de bytes definido en RFC 2616 por IETF).

Un ejemplo de un encabezado Range en una solicitud de protocolo HTTP que solicita los primeros 100 bytes sería el siguiente:

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

En este ejemplo, el rangeSpecifier parámetro se especificaría como "bytes", el from parámetro sería 0 y el to parámetro sería 99.

Un servidor HTTP indica la compatibilidad con los encabezados Range con el encabezado Accept-Ranges en la respuesta. Un ejemplo del encabezado Accept-Ranges de un servidor que admita intervalos de bytes sería el siguiente:

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

La cadena especificada en el encabezado Accept-Ranges es el especificador de intervalo que se especificaría en el rangeSpecifier parámetro para este método.

Si no se recibe un encabezado de Accept-Ranges en el encabezado de la respuesta del servidor, el servidor no admite encabezados range. Un ejemplo del encabezado Accept-Ranges de un servidor que no admite intervalos, pero reconoce el encabezado Accept-Ranges, sería el siguiente:

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

Al recibir la respuesta de una solicitud de intervalo, solo se analizan los encabezados HTTP asociados a toda la solicitud y están disponibles a través de las propiedades de la HttpWebResponse clase . Los encabezados asociados a cada intervalo se devuelven en la respuesta.

Consulte también

Se aplica a