Trong bài viết trước, chúng ta đã tìm hiểu về HTTP Header và một số trường cho phép của HTTP request. Trong cùng một cặp đối tượng đi kèm với request đó là response, trong một phản hồi của HTTP cũng sẽ có một số các trường Header tương tự như request. Tại đây, Stringee và các bạn sẽ cùng đi tìm hiểu chúng nhé.
- Trường Accept-Ranges
Trường này cho phép Server chỉ sự chấp nhận của nó về các dãy yêu cầu cho một nguồn. Cú pháp chung là:
Accept-Ranges: <range-unit>
Accept-Ranges: none
- Trường Age
Trường Age chuyển tính toán về số lượng thời gian từ khi phản hồi được tạo ra tại Server ban đầu của người gửi. Cú pháp chung là:
Age: <delta-seconds>
Giá trị này là các số nguyên thập phân không phủ định, biểu diễn thời gian bằng giây.
- Trường ETag
Trường Etag cung cấp giá trị hiện tại của thẻ đối tượng cho biến thể được yêu cầu. Cú pháp chung là:
ETag: W/"<etag_value>"
ETag: "<etag_value>"
- Trường Location
Trường Location được sử dụng để điều hướng lại người nhận tới một vị trí khác ngoài Request-URI. Nó sẽ xác nhận vị trí ban đầu của đối tượng được bao gồm trong yêu cầu gửi đi. Cú pháp chung là:
Location: /index.html
- Trường Proxy-Authenticate
Được coi như là một phần của phản hồi 407. Cú pháp chung là:
Proxy-Authenticate: <type> realm=<realm>
- Trường Retry-After
Được sử dụng với một phản hồi 503 để chỉ rằng dịch vụ không có sẵn trong vòng bao lâu cho Client đang gửi yêu cầu. Cú pháp chung là:
Retry-After: <http-date>
Retry-After: <delay-seconds>
- Trường Server
Trường này chứa thông tin về phần mềm được sử dụng bởi Server ban đầu để kiểm soát yêu cầu. Cú pháp chung là:
Server: <product>
>>> Xem thêm bài viết:
- HTTP là gì? Tìm hiểu về giao thức HTTP và HTTPS
- HTTP request là gì? Các phương thức HTTP request
- Hướng dẫn cài đặt unix linux
- Trường Set-Cookie
Trường này chứa một cặp tên/giá trị của thông tin để giữ lại cho URL. Cú pháp chung là:
Set-Cookie: <cookie-name>=<cookie-value>
Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>
Set-Cookie: <cookie-name>=<cookie-value>; Expires=<date>
Set-Cookie: <cookie-name>=<cookie-value>; HttpOnly
Set-Cookie: <cookie-name>=<cookie-value>; Max-Age=<number>
Set-Cookie: <cookie-name>=<cookie-value>; Partitioned
Set-Cookie: <cookie-name>=<cookie-value>; Path=<path-value>
Set-Cookie: <cookie-name>=<cookie-value>; Secure
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Strict
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=Lax
Set-Cookie: <cookie-name>=<cookie-value>; SameSite=None; Secure
// Multiple attributes are also possible, for example:
Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>; Secure; HttpOnly
Trường phản hồi Set-Cookie bao gồm Set-Cookie dấu hiệu, được theo sau bởi một danh sách được phân biệt bằng dấu phẩy của một hoặc nhiều cookie. Ở đây là các giá trị có thể mà bạn có thể xác định như là các tính năng:
STT | Các tính năng và Miêu tả |
1 | Comment=comment Tính năng này có thể được sử dụng để xác định bất cứ lời bình nào liên kết với cookie. |
2 | Domain=domain Thuộc tính Domain xác định miền mà với nó cookie là có hiệu lực. |
3 | Expires=Date-time Ngày mà cookie sẽ hết hạn. Nếu nó là trống, cookie sẽ hết hạn khi khách sử dụng rời khỏi trình duyệt. |
4 | Path=path Thuộc tính path xác định bộ thiết lập phụ của các URL mà cookie này áp dụng. |
5 | Secure Nó chỉ dẫn user agent để trả lại cookie chỉ ở dưới dạng một kết nối an toàn. |
- Trường Vary
Trường Vary xác định rằng đối tượng có nhiều nguồn và vì thế có thể theo nhiều cách để tới một danh sách yêu cầu đã được xác định. Sau đây là cú pháp chung:
Vary: *
Vary: <header-name>, <header-name>, ...
- Trường Content-Encoding
Trường này được sử dụng như một bộ chỉnh sửa tới kiểu phương tiện. Cú pháp chung là:
Content-Encoding : content-coding
Mã hóa nội dung là một thuộc tính của một đối tượng được xác định bởi Request-URI. Sau đây là một ví dụ đơn giản:
Content-Encoding: gzip
Content-Encoding: compress
Content-Encoding: deflate
Content-Encoding: br
// Multiple, in the order in which they were applied
Content-Encoding: deflate, gzip
Nếu nội dung của đối tượng không được chấp nhận thì server sẽ trả về mã trạng thái là 415.
- Trường Content-Language
Trường này miêu tả các ngôn ngữ tự nhiên của người đọc đã dự định cho đối tượng đã bao gồm. Sau đây là cú pháp chung:
Content-Language : language-tag
- Trường Content-Length
Trường này chỉ dẫn kích cỡ của phần thân đối tượng, trong số thập phân của hệ 8, được gửi tới người nhận hoặc, trong trường hợp của phương thức HEAD, kích cỡ của phần thân đối tượng mà sẽ được gửi, có yêu cầu là một GET. Cú pháp chung là:
Content-Length: <length>
- Content-Length : DIGITS
Sau đây là một ví dụ đơn giản:
Content-Length: 3495
Bất kỳ Content-Length nào lớn hơn hoặc bằng là một giá trị có hiệu lực.
- Trường Content-Location
Trường này có thể được sử dụng để cung cấp vị trí nguồn cho đối tượng được bao gồm trong thông báo khi đối tượng đó là có thể truy cập từ một vị trí riêng biệt từ một URI của nguồn được yêu cầu. Cú pháp chung là:
Content-Location: <url>
Sau đây là một ví dụ đơn giản:
Content-Location: http://www.tutorialspoint.org../http/index.jsp
- Trường Content-Range
Trường này được gửi với một phần thân thực thể nội bộ để xác định nơi trong toàn bộ phần thân đối tượng mà phần thân nội bộ nên được áp dụng. Cú pháp chung là:
Content-Range: <unit> <range-start>-<range-end>/<size>
Content-Range: <unit> <range-start>-<range-end>/*
Content-Range: <unit> */<size>
- Trường Content-Type
Trường này chỉ dẫn kiểu phương tiện của phần thân đối tượng được gửi tới người nhận hoặc, trong trường hợp phương thức HEAD, kiểu phương tiện mà sẽ được gửi, có yêu cầu là GET. Cú pháp chung là:
Content-Type : media-type
- Trường Expires
Trường này cung cấp Ngày/Thời gian sau đó phản hồi được cho là hết hạn. Cú pháp chung:
Expires : HTTP-date
- Trường Last-Modified
Trường này chỉ ngày và thời gian tại đó Server ban đầu tin rằng sự biến đổi được chỉnh sửa lần cuối. Cú pháp chung là:
Last-Modified: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT
Kết bài
Qua bài viết trên, mong các bạn đã hiểu về HTTP Header cũng như các trường Header của HTTP Request. Stringee còn rất nhiều các bài viết hay khác liên quan đến HTTP các bạn có thể tham khảo thêm tại đây:
- HTTP là gì? Tìm hiểu về giao thức HTTP và HTTPS
- HTTP request là gì? Các phương thức HTTP request
- Hướng dẫn cài đặt Unix/linux
Stringee Communication APIs là giải pháp cung cấp các tính năng giao tiếp như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài CSKH cho phép tích hợp trực tiếp vào ứng dụng/website của doanh nghiệp nhanh chóng. Nhờ đó giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 - 3 năm.
Bộ API giao tiếp của Stringee hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy, Adavigo, bTaskee…
Quý bạn đọc quan tâm xin mời đăng ký NHẬN TƯ VẤN TẠI ĐÂY: