HTTP - Trường tiêu đề

Các trường tiêu đề HTTP cung cấp thông tin bắt buộc về yêu cầu hoặc phản hồi hoặc về đối tượng được gửi trong nội dung thư. Có bốn loại tiêu đề thư HTTP:

  • General-header: Các trường tiêu đề này có khả năng áp dụng chung cho cả thông báo yêu cầu và phản hồi.

  • Client Request-header: Các trường tiêu đề này chỉ có thể áp dụng cho các thông báo yêu cầu.

  • Server Response-header: Các trường tiêu đề này chỉ có thể áp dụng cho các thông báo phản hồi.

  • Entity-header: Các trường tiêu đề này xác định thông tin meta về phần thân thực thể hoặc, nếu không có phần thân nào, về tài nguyên được xác định bởi yêu cầu.

Tiêu đề chung

Kiểm soát bộ nhớ đệm

Trường tiêu đề chung của Cache-Control được sử dụng để chỉ định các chỉ thị PHẢI được tuân theo bởi tất cả hệ thống bộ nhớ đệm. Cú pháp như sau:

Cache-Control : cache-request-directive|cache-response-directive

Máy khách hoặc máy chủ HTTP có thể sử dụng Cache-controltiêu đề chung để chỉ định các tham số cho bộ đệm hoặc để yêu cầu một số loại tài liệu từ bộ đệm. Các chỉ thị bộ nhớ đệm được chỉ định trong danh sách được phân tách bằng dấu phẩy. Ví dụ:

Cache-control: no-cache

Bảng sau liệt kê các chỉ thị yêu cầu bộ đệm ẩn quan trọng mà máy khách có thể sử dụng trong yêu cầu HTTP của nó:

SN Chỉ thị và mô tả yêu cầu bộ nhớ cache
1 no-cache

Bộ đệm ẩn không được sử dụng phản hồi để đáp ứng yêu cầu tiếp theo mà không được xác thực lại thành công với máy chủ gốc.

2 no-store

Bộ nhớ đệm không nên lưu trữ bất cứ điều gì về yêu cầu máy khách hoặc phản hồi của máy chủ.

3 max-age = seconds

Cho biết rằng khách hàng sẵn sàng chấp nhận phản hồi có tuổi không lớn hơn thời gian được chỉ định tính bằng giây.

4 max-stale [ = seconds ]

Cho biết rằng khách hàng sẵn sàng chấp nhận phản hồi đã vượt quá thời gian hết hạn của nó. Nếu giây được đưa ra, nó không được hết hạn quá thời gian đó.

5 min-fresh = seconds

Cho biết rằng khách hàng sẵn sàng chấp nhận phản hồi có thời gian làm mới không nhỏ hơn tuổi hiện tại cộng với thời gian được chỉ định tính bằng giây.

6 no-transform

Không chuyển đổi entity-body.

7 only-if-cached

Không truy xuất dữ liệu mới. Bộ đệm ẩn chỉ có thể gửi tài liệu nếu nó nằm trong bộ đệm và không nên liên hệ với máy chủ gốc để xem có bản sao mới hơn hay không.

Các chỉ thị phản hồi bộ nhớ cache quan trọng sau đây có thể được máy chủ sử dụng trong phản hồi HTTP của nó:

SN Chỉ thị và mô tả phản hồi bộ nhớ cache
1 public

Cho biết rằng phản hồi có thể được lưu vào bộ nhớ đệm bất kỳ.

2 private

Cho biết rằng tất cả hoặc một phần của thông báo phản hồi dành cho một người dùng duy nhất và không được lưu vào bộ nhớ đệm bằng bộ nhớ đệm dùng chung.

3 no-cache

Bộ đệm ẩn không được sử dụng phản hồi để đáp ứng yêu cầu tiếp theo mà không được xác thực lại thành công với máy chủ gốc.

4 no-store

Bộ nhớ đệm không nên lưu trữ bất cứ điều gì về yêu cầu máy khách hoặc phản hồi của máy chủ.

5 no-transform

Không chuyển đổi entity-body.

6 must-revalidate

Bộ nhớ đệm phải xác minh tình trạng của các tài liệu cũ trước khi sử dụng và không nên sử dụng những tài liệu hết hạn.

7 proxy-revalidate

Chỉ thị xác thực lại ủy quyền có cùng ý nghĩa với chỉ thị phải xác thực lại, ngoại trừ nó không áp dụng cho bộ nhớ đệm tác nhân người dùng không được chia sẻ.

số 8 max-age = seconds

Cho biết rằng khách hàng sẵn sàng chấp nhận phản hồi có tuổi không lớn hơn thời gian được chỉ định tính bằng giây.

9 s-maxage = seconds

Độ tuổi tối đa được chỉ định bởi chỉ thị này sẽ ghi đè tuổi tối đa được chỉ định bởi chỉ thị tuổi tối đa hoặc tiêu đề Expires. Chỉ thị s-maxage luôn bị bộ đệm riêng bỏ qua.

Kết nối

Trường tiêu đề chung của Kết nối cho phép người gửi chỉ định các tùy chọn mong muốn cho kết nối cụ thể đó và không được proxy giao tiếp qua các kết nối khác. Sau đây là cú pháp đơn giản để sử dụng tiêu đề kết nối:

Connection : "Connection"

HTTP / 1.1 xác định tùy chọn kết nối "đóng" để người gửi báo hiệu rằng kết nối sẽ bị đóng sau khi hoàn thành phản hồi. Ví dụ:

Connection: close

Theo mặc định, HTTP 1.1 sử dụng kết nối liên tục, nơi kết nối không tự động đóng sau một giao dịch. Mặt khác, HTTP 1.0 không có các kết nối liên tục theo mặc định. Nếu một ứng dụng khách 1.0 muốn sử dụng các kết nối liên tục, nó sẽ sử dụngkeep-alive tham số như sau:

Connection: keep-alive

Ngày

Tất cả các tem ngày / giờ HTTP PHẢI được thể hiện bằng Giờ trung bình Greenwich (GMT), không có ngoại lệ. Các ứng dụng HTTP được phép sử dụng bất kỳ biểu hiện nào sau đây của ba biểu tượng dấu ngày / giờ:

Sun, 06 Nov 1994 08:49:37 GMT  ; RFC 822, updated by RFC 1123
Sunday, 06-Nov-94 08:49:37 GMT ; RFC 850, obsoleted by RFC 1036
Sun Nov  6 08:49:37 1994       ; ANSI C's asctime() format

Đây là định dạng đầu tiên được ưu tiên nhất.

Pragma

Trường tiêu đề chung Pragma được sử dụng để bao gồm các chỉ thị cụ thể về triển khai có thể áp dụng cho bất kỳ người nhận nào trong chuỗi yêu cầu / phản hồi. Ví dụ:

Pragma: no-cache

Lệnh duy nhất được xác định trong HTTP / 1.0 là lệnh no-cache và được duy trì trong HTTP 1.1 để tương thích ngược. Không có chỉ thị Pragma mới nào sẽ được xác định trong tương lai.

Giới thiệu tóm tắt

Giá trị trường chung của đoạn giới thiệu chỉ ra rằng tập hợp các trường tiêu đề nhất định có trong đoạn giới thiệu của một thông báo được mã hóa bằng mã hóa truyền phân đoạn. Sau đây là cú pháp của trường tiêu đề đoạn giới thiệu:

Trailer : field-name

Các trường tiêu đề thư được liệt kê trong trường tiêu đề Đoạn giới thiệu không được bao gồm các trường tiêu đề sau:

  • Transfer-Encoding

  • Content-Length

  • Trailer

Chuyển mã hóa

Trường tiêu đề chung Mã hóa Chuyển cho biết kiểu chuyển đổi nào đã được áp dụng cho nội dung thư để chuyển một cách an toàn giữa người gửi và người nhận. Điều này không giống với mã hóa nội dung vì mã hóa truyền là một thuộc tính của thông báo, không phải của phần thân thực thể. Cú pháp của trường tiêu đề Chuyển mã-Mã hóa như sau:

Transfer-Encoding: chunked

Tất cả các giá trị mã hóa chuyển giao đều không phân biệt chữ hoa chữ thường.

Nâng cấp

Các nâng cấp chung-header cho phép khách hàng để xác định những giao thức truyền thông thêm nó hỗ trợ và muốn sử dụng nếu phát hiện máy chủ nó thích hợp với các giao thức chuyển đổi. Ví dụ:

Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11

Trường tiêu đề Nâng cấp nhằm cung cấp một cơ chế đơn giản để chuyển đổi từ HTTP / 1.1 sang một số giao thức không tương thích khác.

Thông qua

Các Via chung tiêu đề phải được sử dụng bởi các cổng và proxy để chỉ các giao thức trung gian và người nhận. Ví dụ: một thông báo yêu cầu có thể được gửi từ một tác nhân người dùng HTTP / 1.0 tới một proxy nội bộ có tên mã là "fred", sử dụng HTTP / 1.1 để chuyển tiếp yêu cầu đến một proxy công cộng tại nothing.com, nó sẽ hoàn thành yêu cầu bằng chuyển tiếp nó đến máy chủ gốc tại www.ics.uci.edu. Yêu cầu mà www.ics.uci.edu nhận được sau đó sẽ có trường tiêu đề Via sau:

Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)

Trường tiêu đề Nâng cấp nhằm cung cấp một cơ chế đơn giản để chuyển đổi từ HTTP / 1.1 sang một số giao thức không tương thích khác.

Cảnh báo

Các cảnh báo chung-header được sử dụng để thực hiện thêm thông tin về tình trạng, chuyển đổi một thông điệp mà có thể không được phản ánh trong thông điệp. Một phản hồi có thể mang nhiều hơn một tiêu đề Cảnh báo.

Warning : warn-code SP warn-agent SP warn-text SP warn-date

Tiêu đề Yêu cầu của Khách hàng

Chấp nhận

Trường tiêu đề yêu cầu Chấp nhận có thể được sử dụng để chỉ định một số loại phương tiện được chấp nhận cho phản hồi. Cú pháp chung như sau:

Accept: type/subtype [q=qvalue]

Nhiều loại phương tiện có thể được liệt kê phân tách bằng dấu phẩy và qvalue tùy chọn thể hiện mức chất lượng chấp nhận được cho các loại chấp nhận trên thang điểm từ 0 đến 1. Sau đây là một ví dụ:

Accept: text/plain; q=0.5, text/html, text/x-dvi; q=0.8, text/x-c

Điều này sẽ được hiểu là text/htmltext/x-c và là các loại phương tiện được ưu tiên, nhưng nếu chúng không tồn tại, thì hãy gửi text/x-dvi thực thể và nếu điều đó không tồn tại, hãy gửi text/plain thực thể.

Bộ ký tự chấp nhận

Trường tiêu đề yêu cầu Accept-Charset có thể được sử dụng để chỉ ra những bộ ký tự nào được chấp nhận cho phản hồi. Sau đây là cú pháp chung:

Accept-Charset: character_set [q=qvalue]

Nhiều bộ ký tự có thể được liệt kê phân tách bằng dấu phẩy và qvalue tùy chọn thể hiện mức chất lượng có thể chấp nhận được cho các bộ ký tự không ưu tiên trên thang điểm từ 0 đến 1. Sau đây là một ví dụ:

Accept-Charset: iso-8859-5, unicode-1-1; q=0.8

Giá trị đặc biệt "*", nếu có trong Accept-Charset trường, khớp với mọi bộ ký tự và nếu không Accept-Charset có tiêu đề, mặc định là bất kỳ bộ ký tự nào cũng được chấp nhận.

Chấp nhận mã hóa

Trường tiêu đề yêu cầu mã hóa Chấp nhận tương tự như Chấp nhận, nhưng hạn chế mã hóa nội dung được chấp nhận trong phản hồi. Cú pháp chung là:

Accept-Encoding: encoding types

Ví dụ như sau:

Accept-Encoding: compress, gzip
Accept-Encoding:
Accept-Encoding: *
Accept-Encoding: compress;q=0.5, gzip;q=1.0
Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0

Chấp nhận ngôn ngữ

Trường tiêu đề yêu cầu Chấp nhận ngôn ngữ tương tự như Chấp nhận, nhưng hạn chế nhóm ngôn ngữ tự nhiên được ưu tiên làm phản hồi cho yêu cầu. Cú pháp chung là:

Accept-Language: language [q=qvalue]

Nhiều ngôn ngữ có thể được liệt kê phân tách bằng dấu phẩy và qvalue tùy chọn thể hiện mức chất lượng có thể chấp nhận được cho các ngôn ngữ không được ưu tiên trên thang điểm từ 0 đến 1. Sau đây là một ví dụ:

Accept-Language: da, en-gb;q=0.8, en;q=0.7

Ủy quyền

Các Authorization giá trị trường yêu cầu-header bao gồm các thông tin chứa thông tin xác thực của các đại lý người dùng cho lĩnh vực tài nguyên được yêu cầu. Cú pháp chung là:

Authorization : credentials

Đặc tả HTTP / 1.0 xác định lược đồ ủy quyền CƠ BẢN, trong đó tham số ủy quyền là chuỗi username:password được mã hóa trong cơ sở 64. Sau đây là một ví dụ:

Authorization: BASIC Z3Vlc3Q6Z3Vlc3QxMjM=

Giá trị được giải mã thành là guest:guest123 Ở đâu guest là ID người dùng và guest123 là mật khẩu.

Bánh quy

Các Cookie giá trị trường yêu cầu-header chứa một cặp tên / giá trị của thông tin được lưu trữ cho URL đó. Sau đây là cú pháp chung:

Cookie: name=value

Nhiều cookie có thể được chỉ định phân tách bằng dấu chấm phẩy như sau:

Cookie: name1=value1;name2=value2;name3=value3

Chờ đợi

Trường tiêu đề yêu cầu Expect được sử dụng để chỉ ra rằng một tập hợp cụ thể của các hành vi máy chủ được khách hàng yêu cầu. Cú pháp chung là:

Expect : 100-continue | expectation-extension

Nếu máy chủ nhận được yêu cầu chứa trường Kỳ vọng bao gồm tiện ích mở rộng kỳ vọng mà máy chủ không hỗ trợ, máy chủ phải phản hồi với trạng thái 417 (Kỳ vọng không thành công).

Từ

Các Từ yêu cầu-header trường chứa một địa chỉ e-mail Internet cho người sử dụng con người điều khiển các đại lý người dùng yêu cầu. Sau đây là một ví dụ đơn giản:

From: [email protected]

Trường tiêu đề này có thể được sử dụng cho mục đích ghi nhật ký và như một phương tiện để xác định nguồn của các yêu cầu không hợp lệ hoặc không mong muốn.

Tổ chức

Trường tiêu đề yêu cầu Máy chủ được sử dụng để chỉ định máy chủ lưu trữ Internet và số cổng của tài nguyên được yêu cầu. Cú pháp chung là:

Host : "Host" ":" host [ ":" port ] ;

A hostmà không có bất kỳ thông tin cổng nào có nghĩa là cổng mặc định, là 80. Ví dụ: một yêu cầu trên máy chủ gốc cho http://www.w3.org/pub/WWW/ sẽ là:

GET /pub/WWW/ HTTP/1.1
Host: www.w3.org

If-Match

Trường tiêu đề yêu cầu If-Match được sử dụng với một phương thức để làm cho nó có điều kiện. Tiêu đề này yêu cầu máy chủ thực hiện phương thức được yêu cầu chỉ khi giá trị nhất định trong thẻ này khớp với các thẻ thực thể nhất định được đại diện bởiETag. Cú pháp chung là:

If-Match : entity-tag

Dấu hoa thị (*) khớp với bất kỳ thực thể nào và giao dịch chỉ tiếp tục nếu thực thể tồn tại. Sau đây là các ví dụ có thể:

If-Match: "xyzzy"
If-Match: "xyzzy", "r2d2xxxx", "c3piozzzz"
If-Match: *

Nếu không có thẻ thực thể nào khớp hoặc nếu "*" được cung cấp và không có thực thể hiện tại nào tồn tại, máy chủ không được thực hiện phương pháp được yêu cầu và phải trả về phản hồi 412 (Điều kiện tiên quyết không thành công).

If-Modified-Since

Trường tiêu đề yêu cầu If-Modified-Since được sử dụng với một phương thức để làm cho nó có điều kiện. Nếu URL được yêu cầu chưa được sửa đổi kể từ thời điểm được chỉ định trong trường này, một thực thể sẽ không được trả về từ máy chủ; thay vào đó, phản hồi 304 (không được sửa đổi) sẽ được trả lại mà không có bất kỳ nội dung thư nào. Cú pháp chung của if-fixed-since là:

If-Modified-Since : HTTP-date

Một ví dụ về trường là:

If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT

Nếu không có thẻ thực thể nào khớp hoặc nếu "*" được cung cấp và không có thực thể hiện tại nào tồn tại, máy chủ không được thực hiện phương pháp được yêu cầu và phải trả về phản hồi 412 (Điều kiện tiên quyết không thành công).

Nếu-Không-Khớp

Trường tiêu đề yêu cầu If-None-Match được sử dụng với một phương thức để làm cho nó có điều kiện. Tiêu đề này yêu cầu máy chủ thực hiện phương thức được yêu cầu chỉ khi một trong các giá trị nhất định trong thẻ này khớp với các thẻ thực thể nhất định được đại diện bởiETag. Cú pháp chung là:

If-None-Match : entity-tag

Dấu hoa thị (*) khớp với bất kỳ thực thể nào và giao dịch chỉ tiếp tục nếu thực thể đó không tồn tại. Sau đây là các ví dụ có thể:

If-None-Match: "xyzzy"
If-None-Match: "xyzzy", "r2d2xxxx", "c3piozzzz"
If-None-Match: *

Nếu-Phạm vi

Trường tiêu đề yêu cầu If-Range có thể được sử dụng với GET có điều kiện để chỉ yêu cầu một phần của thực thể bị thiếu, nếu nó chưa được thay đổi và toàn bộ thực thể nếu nó đã được thay đổi. Cú pháp chung như sau:

If-Range : entity-tag | HTTP-date

Có thể sử dụng thẻ thực thể hoặc ngày để xác định một phần thực thể đã nhận được. Ví dụ:

If-Range: Sat, 29 Oct 1994 19:43:31 GMT

Ở đây nếu tài liệu chưa được sửa đổi kể từ ngày nhất định, máy chủ sẽ trả về phạm vi byte được cung cấp bởi tiêu đề Phạm vi, nếu không nó sẽ trả về tất cả tài liệu mới.

Nếu-Không sửa đổi-Kể từ

Trường tiêu đề yêu cầu If-Unmodified-Since được sử dụng với một phương thức để làm cho nó có điều kiện. Cú pháp chung là:

If-Unmodified-Since : HTTP-date

Nếu tài nguyên được yêu cầu chưa được sửa đổi kể từ thời điểm được chỉ định trong trường này, máy chủ sẽ thực hiện thao tác được yêu cầu như thể tiêu đề If-Unmodified-Since không xuất hiện. Ví dụ:

If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT

Nếu yêu cầu dẫn đến bất kỳ điều gì khác ngoài trạng thái 2xx hoặc 412, thì tiêu đề If-Unmodified-Since sẽ bị bỏ qua.

Chuyển tiếp tối đa

Trường tiêu đề yêu cầu Max-Forwards cung cấp cơ chế với các phương thức TRACE và OPTIONS để giới hạn số lượng proxy hoặc cổng có thể chuyển tiếp yêu cầu tới máy chủ gửi đến tiếp theo. Đây là cú pháp chung:

Max-Forwards : n

Giá trị Chuyển tiếp Tối đa là một số nguyên thập phân cho biết số lần còn lại thông báo yêu cầu này có thể được chuyển tiếp. Điều này rất hữu ích để gỡ lỗi bằng phương pháp TRACE, tránh các vòng lặp vô hạn. Ví dụ:

Max-Forwards : 5

Trường tiêu đề Max-Forwards có thể bị bỏ qua đối với tất cả các phương thức khác được xác định trong đặc tả HTTP.

Ủy quyền proxy

Trường tiêu đề yêu cầu Ủy quyền Proxy cho phép máy khách tự nhận dạng (hoặc người dùng của nó) đối với một proxy yêu cầu xác thực. Đây là cú pháp chung:

Proxy-Authorization : credentials

Giá trị trường Ủy quyền proxy bao gồm thông tin xác thực có chứa thông tin xác thực của tác nhân người dùng cho proxy và / hoặc lĩnh vực của tài nguyên được yêu cầu.

Phạm vi

Trường tiêu đề yêu cầu phạm vi chỉ định (các) phạm vi một phần của nội dung được yêu cầu từ tài liệu. Cú pháp chung là:

Range: bytes-unit=first-byte-pos "-" [last-byte-pos]

Giá trị byte-pos đầu tiên trong byte-range-spec cung cấp cho byte-offset của byte đầu tiên trong một dải. Giá trị byte-pos cuối cùng cung cấp độ lệch byte của byte cuối cùng trong phạm vi; nghĩa là, các vị trí byte được chỉ định là bao gồm. Bạn có thể chỉ định một đơn vị byte là byte. Hiệu số byte bắt đầu bằng 0. Một số ví dụ đơn giản như sau:

- The first 500 bytes 
Range: bytes=0-499

- The second 500 bytes
Range: bytes=500-999

- The final 500 bytes
Range: bytes=-500

- The first and last bytes only
Range: bytes=0-0,-1

Nhiều phạm vi có thể được liệt kê, phân tách bằng dấu phẩy. Nếu thiếu chữ số đầu tiên trong (các) phạm vi byte được phân tách bằng dấu phẩy, phạm vi này được giả định là sẽ đếm từ cuối tài liệu. Nếu chữ số thứ hai bị thiếu, phạm vi là byte n đến cuối tài liệu.

Người giới thiệu

Trường tiêu đề yêu cầu giới thiệu cho phép máy khách chỉ định địa chỉ (URI) của tài nguyên mà từ đó URL được yêu cầu. Cú pháp chung như sau:

Referer : absoluteURI | relativeURI

Sau đây là một ví dụ đơn giản:

Referer: http://www.tutorialspoint.org/http/index.htm

Nếu giá trị trường là một URI tương đối, thì nó phải được hiểu tương đối với URI yêu cầu .

TE

Trường tiêu đề yêu cầu TE cho biết nó sẵn sàng chấp nhận mã hóa chuyển mở rộng nào trong phản hồi và liệu nó có sẵn sàng chấp nhận các trường đoạn giới thiệu trong mã hóa chuyển đoạn phân đoạn hay không . Sau đây là cú pháp chung:

TE   : t-codings

Sự hiện diện của từ khóa "đoạn giới thiệu" cho biết rằng khách hàng sẵn sàng chấp nhận các trường đoạn giới thiệu bằng mã hóa chuyển đoạn và nó được chỉ định một trong hai cách:

TE: deflate
TE:
TE: trailers, deflate;q=0.5

Nếu TE lĩnh vực có giá trị là rỗng hoặc nếu không có trường TE là hiện nay, sau đó chỉ chuyển-mã hóa được chunked . Một tin nhắn không có mã hóa chuyển luôn được chấp nhận.

Đại lý người dùng

Trường tiêu đề yêu cầu Tác nhân người dùng chứa thông tin về tác nhân người dùng bắt nguồn yêu cầu. Sau đây là cú pháp chung:

User-Agent : product | comment

Thí dụ:

User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)

Tiêu đề phản hồi của máy chủ

Chấp nhận phạm vi

Các Accept-Phạm vi lĩnh vực phản ứng-header cho phép máy chủ chỉ chấp nhận nó yêu cầu nhiều cho một nguồn tài nguyên. Cú pháp chung là:

Accept-Ranges  : range-unit | none

Ví dụ: một máy chủ chấp nhận các yêu cầu phạm vi byte có thể gửi:

Accept-Ranges: bytes

Máy chủ không chấp nhận bất kỳ loại yêu cầu phạm vi nào cho tài nguyên có thể gửi:

Accept-Ranges: none

Điều này sẽ khuyên khách hàng không cố gắng yêu cầu phạm vi.

Tuổi tác

Trường tiêu đề phản hồi Độ tuổi truyền đạt ước tính của người gửi về lượng thời gian kể từ khi phản hồi (hoặc xác thực lại) được tạo tại máy chủ gốc. Cú pháp chung là:

Age : delta-seconds

Giá trị tuổi là số nguyên thập phân không âm, biểu thị thời gian tính bằng giây. Sau đây là một ví dụ đơn giản:

Age: 1030

Máy chủ HTTP / 1.1 bao gồm bộ đệm phải bao gồm trường tiêu đề Tuổi trong mọi phản hồi được tạo từ bộ đệm riêng của nó.

ETag

Trường tiêu đề phản hồi ETag cung cấp giá trị hiện tại của thẻ thực thể cho biến thể được yêu cầu. Cú pháp chung là:

ETag :  entity-tag

Dưới đây là một số ví dụ đơn giản:

ETag: "xyzzy"
ETag: W/"xyzzy"
ETag: ""

Vị trí

Trường tiêu đề phản hồi vị trí được sử dụng để chuyển hướng người nhận đến một vị trí khác với URI yêu cầu để hoàn thành. Cú pháp chung là:

Location : absoluteURI

Sau đây là một ví dụ đơn giản:

Location: http://www.tutorialspoint.org/http/index.htm

Trường tiêu đề Nội dung-Vị trí khác với Vị trí ở chỗ Nội dung-Vị trí xác định vị trí ban đầu của thực thể được đính kèm trong yêu cầu.

Proxy-Authenticate

Trường tiêu đề phản hồi Proxy-Authenticate phải được bao gồm như một phần của phản hồi 407 (Yêu cầu xác thực proxy). Cú pháp chung là:

Proxy-Authenticate  : challenge

Thử lại sau

Trường tiêu đề phản hồi Thử lại Sau khi có thể được sử dụng với phản hồi 503 (Dịch vụ Không khả dụng) để cho biết thời gian dịch vụ dự kiến ​​sẽ không khả dụng cho khách hàng yêu cầu. Cú pháp chung là:

Retry-After : HTTP-date | delta-seconds

Ví dụ:

Retry-After: Fri, 31 Dec 1999 23:59:59 GMT
Retry-After: 120

Trong ví dụ sau, độ trễ là 2 phút.

Người phục vụ

Trường tiêu đề phản hồi Máy chủ chứa thông tin về phần mềm được máy chủ gốc sử dụng để xử lý yêu cầu. Cú pháp chung là:

Server : product | comment

Sau đây là một ví dụ đơn giản:

Server: Apache/2.2.14 (Win32)

Nếu phản hồi đang được chuyển tiếp qua proxy, ứng dụng proxy không được sửa đổi tiêu đề phản hồi của Máy chủ.

Set-Cookie

Trường tiêu đề phản hồi Set-Cookie chứa một cặp thông tin tên / giá trị cần giữ lại cho URL này. Cú pháp chung là:

Set-Cookie: NAME=VALUE; OPTIONS

Tiêu đề phản hồi Set-Cookie bao gồm mã thông báo Set-Cookie, theo sau là danh sách được phân tách bằng dấu phẩy gồm một hoặc nhiều cookie. Dưới đây là các giá trị khả thi mà bạn có thể chỉ định làm tùy chọn:

SN Tùy chọn và Mô tả
1 Comment=comment

Tùy chọn này có thể được sử dụng để chỉ định bất kỳ nhận xét nào được liên kết với cookie.

2 Domain=domain

Thuộc tính Domain chỉ định miền mà cookie hợp lệ.

3 Expires=Date-time

Ngày cookie sẽ hết hạn. Nếu nó trống, cookie sẽ hết hạn khi khách truy cập thoát khỏi trình duyệt.

4 Path=path

Thuộc tính Đường dẫn chỉ định tập hợp con các URL mà cookie này áp dụng.

5 Secure

Nó hướng dẫn tác nhân người dùng chỉ trả lại cookie dưới một kết nối an toàn.

Sau đây là một ví dụ về tiêu đề cookie đơn giản do máy chủ tạo:

Set-Cookie: name1=value1,name2=value2; Expires=Wed, 09 Jun 2021 10:18:14 GMT

Thay đổi

Trường tiêu đề phản hồi thay đổi chỉ định rằng thực thể có nhiều nguồn và do đó có thể thay đổi theo danh sách (các) tiêu đề yêu cầu được chỉ định. Sau đây là cú pháp chung:

Vary : field-name

Bạn có thể chỉ định nhiều tiêu đề được phân tách bằng dấu phẩy và giá trị của dấu hoa thị "*" báo hiệu rằng các thông số không xác định không bị giới hạn đối với tiêu đề yêu cầu. Sau đây là một ví dụ đơn giản:

Vary: Accept-Language, Accept-Encoding

Ở đây các tên trường không phân biệt chữ hoa chữ thường.

WWW-Xác thực

Trường tiêu đề phản hồi WWW-Xác thực phải được bao gồm trong thông báo phản hồi 401 (Không được phép). Giá trị trường bao gồm ít nhất một thử thách cho biết (các) lược đồ xác thực và các tham số áp dụng cho URI yêu cầu. Cú pháp chung là:

WWW-Authenticate : challenge

WWW- Giá trị trường xác thực có thể chứa nhiều thử thách hoặc nếu nhiều trường tiêu đề WWW-Xác thực được cung cấp, thì bản thân nội dung của thử thách có thể chứa danh sách các tham số xác thực được phân tách bằng dấu phẩy. Sau đây là một ví dụ đơn giản:

WWW-Authenticate: BASIC realm="Admin"

Tiêu đề thực thể

Cho phép

Trường Tiêu đề thực thể Cho phép liệt kê tập hợp các phương pháp được hỗ trợ bởi tài nguyên được URI yêu cầu xác định. Cú pháp chung là:

Allow : Method

Bạn có thể chỉ định nhiều phương thức được phân tách bằng dấu phẩy. Sau đây là một ví dụ đơn giản:

Allow: GET, HEAD, PUT

Trường này không thể ngăn khách hàng thử các phương pháp khác.

Mã hóa nội dung

Trường tiêu đề thực thể Mã hóa Nội dung được sử dụng làm công cụ sửa đổi cho loại phương tiện. Cú pháp chung là:

Content-Encoding : content-coding

Mã hóa nội dung là một đặc điểm của thực thể được xác định bởi URI yêu cầu. Sau đây là một ví dụ đơn giản:

Content-Encoding: gzip

Nếu mã hóa nội dung của một thực thể trong thông báo yêu cầu không được máy chủ gốc chấp nhận, thì máy chủ sẽ phản hồi với mã trạng thái là 415 (Loại phương tiện không được hỗ trợ).

Nội dung-Ngôn ngữ

Trường tiêu đề thực thể Ngôn ngữ-Nội dung mô tả (các) ngôn ngữ tự nhiên của đối tượng dự kiến ​​cho thực thể kèm theo. Sau đây là cú pháp chung:

Content-Language : language-tag

Nhiều ngôn ngữ có thể được liệt kê cho nội dung dành cho nhiều đối tượng. Sau đây là một ví dụ đơn giản:

Content-Language: mi, en

Mục đích chính của Ngôn ngữ-Nội dung là cho phép người dùng xác định và phân biệt các thực thể theo ngôn ngữ ưa thích của riêng người dùng.

Thời lượng nội dung

Trường tiêu đề thực thể Độ dài Nội dung cho biết kích thước của phần thân thực thể, theo số thập phân của OCTET, được gửi đến người nhận hoặc trong trường hợp là phương thức HEAD, kích thước của phần thân thực thể đã được gửi, yêu cầu là GET. Cú pháp chung là:

Content-Length : DIGITS

Sau đây là một ví dụ đơn giản:

Content-Length: 3495

Bất kỳ Nội dung-Độ dài nào lớn hơn hoặc bằng 0 đều là một giá trị hợp lệ.

Nội dung-Vị trí

Trường tiêu đề thực thể Nội dung-Vị trí có thể được sử dụng để cung cấp vị trí tài nguyên cho thực thể được đính kèm trong thông báo khi thực thể đó có thể truy cập được từ một vị trí tách biệt với URI của tài nguyên được yêu cầu. Cú pháp chung là:

Content-Location:  absoluteURI | relativeURI

Sau đây là một ví dụ đơn giản:

Content-Location: http://www.tutorialspoint.org/http/index.htm

Giá trị của Nội dung-Vị trí cũng xác định URI cơ sở cho thực thể.

Nội dung-MD5

Trường tiêu đề thực thể Content-MD5 có thể được sử dụng để cung cấp thông báo MD5 về thực thể để kiểm tra tính toàn vẹn của thông báo khi nhận được. Cú pháp chung là:

Content-MD5  : md5-digest using base64 of 128 bit MD5 digest as per RFC 1864

Sau đây là một ví dụ đơn giản:

Content-MD5  : 8c2d46911f3f5a326455f0ed7a8ed3b3

Thông báo MD5 được tính dựa trên nội dung của phần thân thực thể, bao gồm bất kỳ mã hóa nội dung nào đã được áp dụng, nhưng không bao gồm bất kỳ mã hóa truyền nào được áp dụng cho phần thân thư.

Phạm vi nội dung

Trường tiêu đề thực thể Phạm vi nội dung được gửi cùng với một phần thân thực thể để chỉ định vị trí trong phần thân thực thể đầy đủ, phần thân một phần sẽ được áp dụng. Cú pháp chung là:

Content-Range : bytes-unit SP first-byte-pos "-" last-byte-pos

Ví dụ về giá trị byte-content-range-spec, giả sử rằng thực thể chứa tổng cộng 1234 byte:

- The first 500 bytes:
Content-Range : bytes 0-499/1234

- The second 500 bytes:
Content-Range : bytes 500-999/1234

- All except for the first 500 bytes:
Content-Range : bytes 500-1233/1234

- The last 500 bytes:
Content-Range : bytes 734-1233/1234

Khi một thông báo HTTP bao gồm nội dung của một phạm vi duy nhất, nội dung này được truyền với tiêu đề Phạm vi nội dung và tiêu đề Độ dài nội dung hiển thị số byte thực sự được truyền. Ví dụ,

HTTP/1.1 206 Partial content
Date: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-Range: bytes 21010-47021/47022
Content-Length: 26012
Content-Type: image/gif

Loại nội dung

Trường tiêu đề thực thể Loại-Nội dung cho biết loại phương tiện của phần thân thực thể được gửi đến người nhận hoặc, trong trường hợp của phương thức HEAD, loại phương tiện sẽ được gửi, có yêu cầu là GET. Cú pháp chung là:

Content-Type : media-type

Sau đây là một ví dụ:

Content-Type: text/html; charset=ISO-8859-4

Hết hạn

Trường tiêu đề thực thể Expires cung cấp ngày / giờ mà sau đó phản hồi được coi là cũ. Cú pháp chung là:

Expires : HTTP-date

Sau đây là một ví dụ:

Expires: Thu, 01 Dec 1994 16:00:00 GMT

Sửa đổi lần cuối

Trường tiêu đề thực thể được sửa đổi lần cuối cho biết ngày và giờ tại đó máy chủ gốc tin rằng biến thể được sửa đổi lần cuối. Cú pháp chung là:

Last-Modified: HTTP-date

Sau đây là một ví dụ:

Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT