關於原著作請參考 https://benramsey.com/blog/2008/05/206-partial-content-and-range-requests/
206 Partial Content通常出現在類似訊雷續載軟體的情境,因為存在服務器(Server)的檔案過大可能下載到一半斷線或無法下載,因此為解決這類的問題,在用戶和服務器之間會設定一個協定,讓每次的傳輸切分為幾個部份一個個慢慢下載。
原文作者提出一個範例詮譯 206 作法。
首先,用戶會向服務器詢問某項資源是否存在,這項資源可能是影片、圖片或其它服務器內容:
# Client-side
HEAD /images/stock-photo-69456739.jpg HTTP/1.1
Host: www.example.com
接著,如果服務器擁有這項資源則回應
# Server-side
HTTP/1.0 200 OK
Accept-Ranges:bytes
Content-Length: 3980
Content-Type: image/jpeg
X-Powered-By:Express
用戶提出下載第1部份的內容
# Client-side
HEAD /images/stock-photo-69456739.jpg HTTP/1.1
Host: www.example.com
Range: bytes=0-999
服務器回傳第1 部份的內容
# Server-side
HTTP/1.0 206 Partial Content
Date:Mon, 17 Apr 2017 01:46:14 GMT
X-Powered-By:Express
Accept-Ranges: bytes
Content-Length: 1000
Content-Range: bytes 0-999/3980
Content-Type: image/jpeg
{binary data}
用戶提出下載後續部份的內容
# Client-side
HEAD /images/stock-photo-69456739.jpg HTTP/1.1
Host: www.example.com
Range: bytes=1000-
服務器回傳後續部份的內容
# Server-side
HTTP/1.0 206 Partial Content
Date:Mon, 17 Apr 2017 01:46:14 GMT
X-Powered-By:Express
Accept-Ranges: bytes
Content-Length: 2980
Content-Range: bytes 1000-3979/3980
Content-Type: image/jpeg
{binary data}