官术网_书友最值得收藏!

HTTP headers

Below the request line are a series of key-value pairs that provide metadata describing how the request should be handled. These metadata fields are called HTTP headers. In our simple request, made earlier, we have a single HTTP header that defines the target host we are trying to reach. This information is not required by the HTTP protocol; however, it is almost always sent in order to provide clarification on who should be receiving the request.

If you were to inspect the HTTP request sent by your web browser, you would see many more HTTP headers. The following is an example sent by a Google Chrome browser to the same example.com website:

GET /index.html HTTP/1.1
Host: example.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
If-None-Match: "1541025663+gzip"
If-Modified-Since: Fri, 09 Aug 2013 23:54:35 GMT

The basics of the HTTP request are the same, however, your browser provides significantly more request headers, mostly related to how to handle cached HTML pages. We will discuss some of these headers in more detail in the following chapters.

The server reads the request and processes all of the headers to decide how to respond to your request. In the most basic scenario, the server will respond saying Your request is OK and deliver the contents of index.html.

主站蜘蛛池模板: 密云县| 叙永县| 利川市| 凤冈县| 丰城市| 阿瓦提县| 温宿县| 虞城县| 汝南县| 苍山县| 临沭县| 宿松县| 余江县| 习水县| 万州区| 清流县| 乐安县| 共和县| 阿城市| 德保县| 灵寿县| 康马县| 黄大仙区| 石棉县| 宜章县| 蓬安县| 北宁市| 大丰市| 雷山县| 青田县| 乐东| 乌什县| 平乡县| 阿克陶县| 云龙县| 唐山市| 浦城县| 平乐县| 屏东县| 太谷县| 安徽省|