HttpWebRequest.AddRange Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona um cabeçalho de intervalo à solicitação.
Sobrecargas
AddRange(Int32) |
Adiciona um cabeçalho de intervalo de bytes a uma solicitação de um intervalo específico desde o início ou o final dos dados solicitados. |
AddRange(Int64) |
Adiciona um cabeçalho de intervalo de bytes a uma solicitação de um intervalo específico desde o início ou o final dos dados solicitados. |
AddRange(Int32, Int32) |
Adiciona um cabeçalho de intervalo de bytes à solicitação de um intervalo especificado. |
AddRange(Int64, Int64) |
Adiciona um cabeçalho de intervalo de bytes à solicitação de um intervalo especificado. |
AddRange(String, Int32) |
Adiciona um cabeçalho Range a uma solicitação para um intervalo específico desde o início ou o fim dos dados solicitados. |
AddRange(String, Int64) |
Adiciona um cabeçalho Range a uma solicitação para um intervalo específico desde o início ou o fim dos dados solicitados. |
AddRange(String, Int32, Int32) |
Adiciona um cabeçalho de intervalo a uma solicitação de um intervalo especificado. |
AddRange(String, Int64, Int64) |
Adiciona um cabeçalho de intervalo a uma solicitação de um intervalo especificado. |
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
AddRange(Int32)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo de bytes a uma solicitação de um intervalo específico desde o início ou o final dos dados 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
O ponto inicial ou final do intervalo.
Exceções
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Exemplos
O exemplo de código a seguir adiciona um cabeçalho de intervalo à solicitação.
// 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())
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho de intervalo de bytes à solicitação.
Se range
for positivo, o parâmetro range
especifica o ponto inicial do intervalo. O servidor deve começar a enviar dados do parâmetro range
especificado ao final dos dados na entidade HTTP.
Se range
for negativo, o parâmetro range
especifica o ponto final do intervalo. O servidor deve começar a enviar dados desde o início dos dados na entidade HTTP para o parâmetro range
especificado.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita que o servidor envie os primeiros 100 bytes (do início à posição de byte 99) seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro range
seria -99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(Int64)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo de bytes a uma solicitação de um intervalo específico desde o início ou o final dos dados 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
O ponto inicial ou final do intervalo.
Exceções
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho de intervalo de bytes à solicitação.
Se range
for positivo, o parâmetro range
especifica o ponto inicial do intervalo. O servidor deve começar a enviar dados do parâmetro range
especificado ao final dos dados na entidade HTTP.
Se range
for negativo, o parâmetro range
especifica o ponto final do intervalo. O servidor deve começar a enviar dados desde o início dos dados na entidade HTTP para o parâmetro range
especificado.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita que o servidor envie os primeiros 100 bytes (do início à posição de byte 99) seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro range
seria -99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(Int32, Int32)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo de bytes à solicitação de um 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
A posição na qual começar a enviar dados.
- to
- Int32
A posição na qual interromper o envio de dados.
Exceções
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Exemplos
O exemplo de código a seguir adiciona um cabeçalho de intervalo à solicitação.
// 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()
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho de intervalo de bytes à solicitação.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro from
seria especificado como 0 e o parâmetro to
seria especificado como 99. O especificador de intervalo é definido automaticamente como "bytes" por esse método.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(Int64, Int64)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo de bytes à solicitação de um 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
A posição na qual começar a enviar dados.
- to
- Int64
A posição na qual interromper o envio de dados.
Exceções
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho de intervalo de bytes à solicitação.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro from
seria especificado como 0 e o parâmetro to
seria especificado como 99. O especificador de intervalo é definido automaticamente como "bytes" por esse método.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(String, Int32)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho Range a uma solicitação para um intervalo específico desde o início ou o fim dos dados 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
A descrição do intervalo.
- range
- Int32
O ponto inicial ou final do intervalo.
Exceções
rangeSpecifier
é null
.
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho Range à solicitação.
Se range
for positivo, o parâmetro range
especifica o ponto inicial do intervalo. O servidor deve começar a enviar dados do parâmetro range
especificado ao final dos dados na entidade HTTP.
Se range
for negativo, o parâmetro range
especifica o ponto final do intervalo. O servidor deve começar a enviar dados desde o início dos dados na entidade HTTP para o parâmetro range
especificado.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
O parâmetro rangeSpecifier
normalmente seria especificado como um "bytes", pois esse é o único especificador de intervalo reconhecido pela maioria dos servidores HTTP. Definir o parâmetro rangeSpecifier
para alguma outra cadeia de caracteres permite suporte para especificadores de intervalo personalizados que não sejam bytes (o especificador de intervalo de bytes definido no RFC 2616 pela IETF).
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=-99\r\n\r\n
Para este exemplo, o parâmetro rangeSpecifier
seria especificado como "bytes" e o parâmetro range
seria -99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges na resposta. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(String, Int64)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho Range a uma solicitação para um intervalo específico desde o início ou o fim dos dados 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
A descrição do intervalo.
- range
- Int64
O ponto inicial ou final do intervalo.
Exceções
rangeSpecifier
é null
.
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho Range à solicitação.
Se range
for positivo, o parâmetro range
especifica o ponto inicial do intervalo. O servidor deve começar a enviar dados do parâmetro range
especificado ao final dos dados na entidade HTTP.
Se range
for negativo, o parâmetro range
especifica o ponto final do intervalo. O servidor deve começar a enviar dados desde o início dos dados na entidade HTTP para o parâmetro range
especificado.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
O parâmetro rangeSpecifier
normalmente seria especificado como um "bytes", pois esse é o único especificador de intervalo reconhecido pela maioria dos servidores HTTP. Definir o parâmetro rangeSpecifier
para alguma outra cadeia de caracteres permite suporte para especificadores de intervalo personalizados que não sejam bytes (o especificador de intervalo de bytes definido no RFC 2616 pela IETF).
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=-99\r\n\r\n
Para este exemplo, o parâmetro rangeSpecifier
seria especificado como "bytes" e o parâmetro range
seria -99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges na resposta. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(String, Int32, Int32)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo a uma solicitação de um 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
A descrição do intervalo.
- from
- Int32
A posição na qual começar a enviar dados.
- to
- Int32
A posição na qual interromper o envio de dados.
Exceções
rangeSpecifier
é null
.
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho Range à solicitação.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
O parâmetro rangeSpecifier
normalmente seria especificado como um "bytes", pois esse é o único especificador de intervalo reconhecido pela maioria dos servidores HTTP. Definir o parâmetro rangeSpecifier
para alguma outra cadeia de caracteres permite suporte para especificadores de intervalo personalizados que não sejam bytes (o especificador de intervalo de bytes definido no RFC 2616 pela IETF).
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro rangeSpecifier
seria especificado como um "bytes", o parâmetro from
seria 0 e o parâmetro to
seria 99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges na resposta. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
A cadeia de caracteres especificada no cabeçalho Accept-Ranges é o especificador de intervalo que seria especificado no parâmetro rangeSpecifier
para esse método.
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.
Confira também
Aplica-se a
AddRange(String, Int64, Int64)
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
- Origem:
- HttpWebRequest.cs
Adiciona um cabeçalho de intervalo a uma solicitação de um 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
A descrição do intervalo.
- from
- Int64
A posição na qual começar a enviar dados.
- to
- Int64
A posição na qual interromper o envio de dados.
Exceções
rangeSpecifier
é null
.
rangeSpecifier
é inválido.
Não foi possível adicionar o cabeçalho de intervalo.
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
O método HttpWebRequest.AddRange adiciona um cabeçalho Range à solicitação.
Como todas as entidades HTTP são representadas em mensagens HTTP como sequências de bytes, o conceito de um intervalo de bytes é significativo para qualquer entidade HTTP. No entanto, nem todos os clientes e servidores precisam dar suporte a operações de intervalo de bytes.
O cabeçalho Range em uma solicitação permite que um cliente solicite que ele só deseja receber alguma parte do intervalo de bytes especificado em uma entidade HTTP. Os servidores não são necessários para dar suporte a solicitações de cabeçalho range.
O parâmetro rangeSpecifier
normalmente seria especificado como um "bytes", pois esse é o único especificador de intervalo reconhecido pela maioria dos servidores HTTP. Definir o parâmetro rangeSpecifier
para alguma outra cadeia de caracteres permite suporte para especificadores de intervalo personalizados que não sejam bytes (o especificador de intervalo de bytes definido no RFC 2616 pela IETF).
Um exemplo de um cabeçalho Range em uma solicitação de protocolo HTTP que solicita os primeiros 100 bytes seria o seguinte:
Range: bytes=0-99\r\n\r\n
Para este exemplo, o parâmetro rangeSpecifier
seria especificado como um "bytes", o parâmetro from
seria 0 e o parâmetro to
seria 99.
Um servidor HTTP indica suporte para cabeçalhos range com o cabeçalho Accept-Ranges na resposta. Um exemplo do cabeçalho Accept-Ranges de um servidor que dá suporte a intervalos de bytes seria o seguinte:
Accept-Ranges: bytes\r\n\r\n
A cadeia de caracteres especificada no cabeçalho Accept-Ranges é o especificador de intervalo que seria especificado no parâmetro rangeSpecifier
para esse método.
Se um cabeçalho Accept-Ranges não for recebido no cabeçalho da resposta do servidor, o servidor não oferecerá suporte a cabeçalhos range. Um exemplo do cabeçalho Accept-Ranges de um servidor que não dá suporte a intervalos, mas reconhece o cabeçalho Accept-Ranges, seria o seguinte:
Accept-Ranges: none\r\n\r\n
Ao receber a resposta de uma solicitação de intervalo, somente os cabeçalhos HTTP associados à solicitação inteira são analisados e disponibilizados por meio de propriedades na classe HttpWebResponse. Cabeçalhos associados a cada intervalo são retornados na resposta.