共用方式為


HttpWebRequest.AddRange 方法

定義

將範圍標頭新增至要求。

多載

AddRange(Int32)

將位元組範圍標頭加入至要求數據開頭或結尾的特定範圍要求。

AddRange(Int64)

將位元組範圍標頭加入至要求數據開頭或結尾的特定範圍要求。

AddRange(Int32, Int32)

將位元組範圍標頭加入至指定範圍的要求。

AddRange(Int64, Int64)

將位元組範圍標頭加入至指定範圍的要求。

AddRange(String, Int32)

從所要求數據的開頭或結尾,將 Range 標頭加入至特定範圍的要求。

AddRange(String, Int64)

從所要求數據的開頭或結尾,將 Range 標頭加入至特定範圍的要求。

AddRange(String, Int32, Int32)

將範圍標頭加入至指定範圍的要求。

AddRange(String, Int64, Int64)

將範圍標頭加入至指定範圍的要求。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

AddRange(Int32)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將位元組範圍標頭加入至要求數據開頭或結尾的特定範圍要求。

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

參數

range
Int32

範圍的起點或結束點。

例外狀況

rangeSpecifier 無效。

無法新增範圍標頭。

範例

下列程式代碼範例會將範圍標頭新增至要求。

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

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將位元組範圍標頭新增至要求。

如果 range 為正數,range 參數會指定範圍的起點。 伺服器應該會開始從指定至 HTTP 實體中數據結尾的 range 參數傳送數據。

如果 range 為負數,range 參數會指定範圍的結束點。 伺服器應該會開始將數據從 HTTP 實體中的數據開頭傳送至指定的 range 參數。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

HTTP 通訊協定要求中的 Range 標頭範例,要求伺服器傳送前 100 個字節(從開始到位元組位置 99)如下:

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

在此範例中,range 參數會是 -99。

HTTP 伺服器表示支援具有 Accept-Ranges 標頭的 Range 標頭。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(Int64)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將位元組範圍標頭加入至要求數據開頭或結尾的特定範圍要求。

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

參數

range
Int64

範圍的起點或結束點。

例外狀況

rangeSpecifier 無效。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將位元組範圍標頭新增至要求。

如果 range 為正數,range 參數會指定範圍的起點。 伺服器應該會開始從指定至 HTTP 實體中數據結尾的 range 參數傳送數據。

如果 range 為負數,range 參數會指定範圍的結束點。 伺服器應該會開始將數據從 HTTP 實體中的數據開頭傳送至指定的 range 參數。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

HTTP 通訊協定要求中的 Range 標頭範例,要求伺服器傳送前 100 個字節(從開始到位元組位置 99)如下:

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

在此範例中,range 參數會是 -99。

HTTP 伺服器表示支援具有 Accept-Ranges 標頭的 Range 標頭。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(Int32, Int32)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將位元組範圍標頭加入至指定範圍的要求。

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)

參數

from
Int32

開始傳送數據的位置。

to
Int32

停止傳送數據的位置。

例外狀況

rangeSpecifier 無效。

from 大於 to

-或-

fromto 小於 0。

無法新增範圍標頭。

範例

下列程式代碼範例會將範圍標頭新增至要求。

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

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將位元組範圍標頭新增至要求。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,from 參數會指定為 0,並將 to 參數指定為 99。 這個方法會自動將範圍規範設定為 「bytes」。。

HTTP 伺服器表示支援具有 Accept-Ranges 標頭的 Range 標頭。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(Int64, Int64)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將位元組範圍標頭加入至指定範圍的要求。

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)

參數

from
Int64

開始傳送數據的位置。

to
Int64

停止傳送數據的位置。

例外狀況

rangeSpecifier 無效。

from 大於 to

-或-

fromto 小於 0。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將位元組範圍標頭新增至要求。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,from 參數會指定為 0,並將 to 參數指定為 99。 這個方法會自動將範圍規範設定為 「bytes」。。

HTTP 伺服器表示支援具有 Accept-Ranges 標頭的 Range 標頭。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(String, Int32)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

從所要求數據的開頭或結尾,將 Range 標頭加入至特定範圍的要求。

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)

參數

rangeSpecifier
String

範圍的描述。

range
Int32

範圍的起點或結束點。

例外狀況

rangeSpecifier null

rangeSpecifier 無效。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將 Range 標頭新增至要求。

如果 range 為正數,range 參數會指定範圍的起點。 伺服器應該會開始從指定至 HTTP 實體中數據結尾的 range 參數傳送數據。

如果 range 為負數,range 參數會指定範圍的結束點。 伺服器應該會開始將數據從 HTTP 實體中的數據開頭傳送至指定的 range 參數。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

rangeSpecifier 參數通常會指定為「位元組」,因為這是大多數 HTTP 伺服器唯一可辨識的範圍規範。 將 rangeSpecifier 參數設定為某些其他字串,可支援位元組以外的自定義範圍規範(IETF 在 RFC 2616 中定義的位元組範圍規範)。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,rangeSpecifier 參數會指定為 “bytes”,而 range 參數會是 -99。

HTTP 伺服器表示對回應中具有 Accept-Ranges 標頭之 Range 標頭的支援。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(String, Int64)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

從所要求數據的開頭或結尾,將 Range 標頭加入至特定範圍的要求。

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)

參數

rangeSpecifier
String

範圍的描述。

range
Int64

範圍的起點或結束點。

例外狀況

rangeSpecifier null

rangeSpecifier 無效。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將 Range 標頭新增至要求。

如果 range 為正數,range 參數會指定範圍的起點。 伺服器應該會開始從指定至 HTTP 實體中數據結尾的 range 參數傳送數據。

如果 range 為負數,range 參數會指定範圍的結束點。 伺服器應該會開始將數據從 HTTP 實體中的數據開頭傳送至指定的 range 參數。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

rangeSpecifier 參數通常會指定為「位元組」,因為這是大多數 HTTP 伺服器唯一可辨識的範圍規範。 將 rangeSpecifier 參數設定為某些其他字串,可支援位元組以外的自定義範圍規範(IETF 在 RFC 2616 中定義的位元組範圍規範)。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,rangeSpecifier 參數會指定為 “bytes”,而 range 參數會是 -99。

HTTP 伺服器表示對回應中具有 Accept-Ranges 標頭之 Range 標頭的支援。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(String, Int32, Int32)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將範圍標頭加入至指定範圍的要求。

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)

參數

rangeSpecifier
String

範圍的描述。

from
Int32

開始傳送數據的位置。

to
Int32

停止傳送數據的位置。

例外狀況

rangeSpecifier null

from 大於 to

-或-

fromto 小於 0。

rangeSpecifier 無效。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將 Range 標頭新增至要求。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

rangeSpecifier 參數通常會指定為「位元組」,因為這是大多數 HTTP 伺服器唯一可辨識的範圍規範。 將 rangeSpecifier 參數設定為某些其他字串,可支援位元組以外的自定義範圍規範(IETF 在 RFC 2616 中定義的位元組範圍規範)。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,rangeSpecifier 參數會指定為 「bytes」,from 參數會是 0,而 to 參數會是 99。

HTTP 伺服器表示對回應中具有 Accept-Ranges 標頭之 Range 標頭的支援。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

在 Accept-Ranges 標頭中指定的字串是這個方法的 rangeSpecifier 參數中所指定的範圍規範。

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於

AddRange(String, Int64, Int64)

來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs
來源:
HttpWebRequest.cs

將範圍標頭加入至指定範圍的要求。

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)

參數

rangeSpecifier
String

範圍的描述。

from
Int64

開始傳送數據的位置。

to
Int64

停止傳送數據的位置。

例外狀況

rangeSpecifier null

from 大於 to

-或-

fromto 小於 0。

rangeSpecifier 無效。

無法新增範圍標頭。

備註

謹慎

WebRequestHttpWebRequestServicePointWebClient 已經過時,您不應該將它們用於新的開發。 請改用 HttpClient

HttpWebRequest.AddRange 方法會將 Range 標頭新增至要求。

由於所有 HTTP 實體都會以 HTTP 訊息表示為位元組序列,因此位元組範圍的概念對於任何 HTTP 實體都有意義。 不過,並非所有客戶端和伺服器都需要支援位元組範圍作業。

要求上的 Range 標頭可讓用戶端要求它只想要在 HTTP 實體中接收指定位元組範圍的一部分。 伺服器不需要支援 Range 標頭要求。

rangeSpecifier 參數通常會指定為「位元組」,因為這是大多數 HTTP 伺服器唯一可辨識的範圍規範。 將 rangeSpecifier 參數設定為某些其他字串,可支援位元組以外的自定義範圍規範(IETF 在 RFC 2616 中定義的位元組範圍規範)。

HTTP 通訊協定要求中要求前 100 個字節的 Range 標頭範例如下:

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

在此範例中,rangeSpecifier 參數會指定為 「bytes」,from 參數會是 0,而 to 參數會是 99。

HTTP 伺服器表示對回應中具有 Accept-Ranges 標頭之 Range 標頭的支援。 支援位元組範圍之伺服器的 Accept-Ranges 標頭範例如下:

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

在 Accept-Ranges 標頭中指定的字串是這個方法的 rangeSpecifier 參數中所指定的範圍規範。

如果伺服器回應的標頭中未收到 Accept-Ranges 標頭,則伺服器不支援 Range 標頭。 不支援範圍但可辨識 Accept-Ranges 標頭之伺服器 Accept-Ranges 標頭的范例如下:

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

從範圍要求接收回應時,只會剖析與整個要求相關聯的 HTTP 標頭,並透過 HttpWebResponse 類別上的屬性提供。 與每個範圍相關聯的標頭會在響應中傳回。

另請參閱

適用於