美文网首页
HTTP请求的 Header 头解析

HTTP请求的 Header 头解析

作者: 简爱的三年 | 来源:发表于2019-04-20 23:12 被阅读0次

Request Headers

下图是我访问一个URL: 简书 的一个header,根据具体实例来分析一下各部分的功能及其作用。

request-header.png

Accept

作用: 浏览器端可以接受的媒体类型

例如: Accept: text/html 代表浏览器可以接受服务器回发的类型为 text/html 也就是我们常说的html文档,

如果服务器无法返回text/html类型的数据,服务器应该返回一个406错误(non acceptable)

通配符 * 代表任意类型

例如 Accept: / 代表浏览器可以处理所有类型,(一般浏览器发给服务器都是发这个)


Accept-Encoding

作用: 浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什么压缩方法(gzip,deflate),(注意:这不是只字符编码);

例如:Accept-Encoding: zh-CN,zh;q=0.8


Accept-Language

作用: 浏览器申明自己接收的语言。

语言跟字符集的区别:中文是语言,中文有多种字符集,比如big5,gb2312,gbk等等;

例如: Accept-Language: en-us


Connection

例如: Connection: keep-alive 当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接

例如: Connection: close 代表一个Request完成后,客户端和服务器之间用于传输HTTP数据的TCP连接会关闭, 当客户端再次发送Request,需要重新建立TCP连接。

Host(发送请求时,该报头域是必需的)

作用: 请求报头域主要用于指定被请求资源的Internet主机和端口号,它通常从HTTP URL中提取出来的

例如: 我们在浏览器中输入:https://www.jianshu.com/

浏览器发送的请求消息中,就会包含Host请求报头域,如下:

Host://www.jianshu.com/

此处使用缺省端口号80,若指定了端口号,则变成:Host:指定端口号


Referer

当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。比如从我主页上链接到一个朋友那里,他的服务器就能够从HTTP Referer中统计出每天有多少用户点击我主页上的链接访问他的网站


User-Agent
作用:告诉HTTP服务器, 客户端使用的操作系统和浏览器的名称和版本.

我们上网登陆论坛的时候,往往会看到一些欢迎信息,其中列出了你的操作系统的名称和版本,你所使用的浏览器的名称和版本,这往往让很多人感到很神奇,实际上,服务器应用程序就是从User-Agent这个请求报头域中获取到这些信息User-Agent请求报头域允许客户端将它的操作系统、浏览器和其它属性告诉服务器。

例如: User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; CIBA; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; InfoPath.2; .NET4.0E)


另外,访问一些其他的URL的时候,request 的Header里面一些其他的字段,下面来进行列举:

If-None-Match

作用: If-None-MatchETag一起工作,工作原理是在HTTP Response中添加ETag信息。 当用户再次请求该资源时,将在HTTP Request 中加入If-None-Match信息(ETag的值)。如果服务器验证资源的ETag没有改变(该资源没有更新),将返回一个304状态告诉客户端使用本地缓存文件。否则将返回200状态和新的资源和Etag. 使用这样的机制将提高网站的性能

例如: If-None-Match: W/"3119-1437038474000"

相关文章

  • HTTP请求的header头解析

    Request Headers:下图是我访问一个URL:http://www.hzau.edu.cn的一个head...

  • HTTP请求的 Header 头解析

    Request Headers 下图是我访问一个URL: 简书 的一个header,根据具体实例来分析一下各部分的...

  • 网络传输 http tcp

    HTTP请求头信息 Connection 请求头信息 Connection Connection 头(header...

  • HTTP Header简介

    HTTP Header 协议头的字段(Header),请求(request)或响应(response)。协议头的字...

  • http header http常用请求头

    HTTP请求header 1.常用Requests部分2.常用Responses 部分3.不常用部分(可以不看)|...

  • HTTP请求头(Header)参数

    HTTP 协议的 Header 是一块数据区域,分为请求头和响应头两种类型,客户端向服务区发送请求时带的是请求头,...

  • Linux命令之curl

    获取http请求头信息,-I 只打印response header, -i 打印response header和...

  • HTTP简单点

    1.HTTP请求的组成 (1):请求方法URI协议/版本(2):请求头(Request Header)(3):请求...

  • HTTP请求

    HTTP响应头和请求头信息对照表[http://tools.jb51.net/table/http_header]...

  • HTTP Header

    HTTP Header 详解HTTP Header解析 HTTP(HyperTextTransferProtoco...

网友评论

      本文标题:HTTP请求的 Header 头解析

      本文链接:https://www.haomeiwen.com/subject/xznlgqtx.html