一、http 请求头字段 简介
HTTP header fields are components of the header section of request and response messages in the Hypertext Transfer Protocol (HTTP). They define the operating parameters of an HTTP transaction.
Http请求头的字段是http协议请求头的组成部分,
它们包含了定义http传输时的操作参数。
二、http 请求头的基本格式
General format
The header fields are transmitted after the request line (in case of a request HTTP message) or the response line (in case of a response HTTP message), which is the first line of a message. Header fields are colon-separated key-value pairs in clear-text string format, terminated by a carriage return (CR) and line feed (LF) character sequence. The end of the header section is indicated by an empty field(line), resulting in the transmission of two consecutive CR-LF pairs.
请求头字段:位于在请求体的第一行后面被发送(即:开始于请求体的第二行)。
请求头字段:由被冒号(:)分割的纯字符串的键值对组成。由回车换行(两个字符)结束。
即:一个键值对只能放在同一行中。
请求头的结束标志是:一个空键值对(一个空行)。
即:只包含了一个回车符号和一个换行符号的行,标志着请求头的结束。
三、http 请求头的字段的名称
Field names
A core set of fields is standardized by the Internet Engineering Task Force (IETF) in RFCs 7230, 7231, 7232, 7233, 7234, and 7235. The permanent registry of header fields and repository of provisional registrations are maintained by the IANA. Additional field names and permissible values may be defined by each application.
有些字段名称已经被 IETF 标准化(占用并赋予特定含义)了。
字段的永久注册表和临时注册存储库由IANA维护。
应用程序可以自己定义另外其它的字段名称,加到 header 中。
四、http 请求头的字段的值
Field values
A few fields can contain comments (i.e. in User-Agent, Server, Via fields), which can be ignored by software.[4]
Many field values may contain a quality (q) key-value pair separated by equals sign, specifying a weight to use in content negotiation.[5]
少数字段的值可以包含注释,如:User-Agent, Server, Via。
这些注释可以被软件忽略。
许多字段由含有等号(=)分割的键值对组成。
五、http 请求头的大小限制
Size limits
The standard imposes no limits to the size of each header field name or value, or to the number of fields. However, most servers, clients, and proxy software impose some limits for practical and security reasons. For example, the Apache 2.3 server by default limits the size of each field to 8,190 bytes, and there can be at most 100 header fields in a single request.
该标准对每个标题字段名称或值的大小或字段数量
没有限制。
但是,出于实际和安全原因,大多数服务器,客户端和代理软件都会施加一些限制。 例如,Apache 2.3服务器默认情况下将每个字段的大小限制为8,190字节,并且单个请求中最多可以有100个标头字段。
六、一些标准的常见的字段名称及含义
Request 请求头字段:
名称:Accept
解释:规定可接受的 response 的 Media type(s) 类型。
举例:Accept: text/html
名称:Authorization
解释:HTTP认证的凭据(最基本的格式:该凭据是用户名+密码)。是最简单的资源访问限制的实现方法。
举例:Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
名称:Cache-Control
解释:Cache 控制
举例:Cache-Control: no-cache
名称:Content-Type
解释:请求体的类型
举例:Content-Type: application/x-www-form-urlencoded
名称:Cookie
解释:该字段的值会同时被存储到浏览器端。
举例:Cookie: $Version=1; Skin=new;
名称:Host
解释:服务器端域名:端口(端口可省略如果是默认的80端口)
举例:Host: en.wikipedia.org
Host: en.wikipedia.org:8080
Response 请求头字段:
转载请注明,
原文出处:http://lixh1986.iteye.com/blog/2431314
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
https://en.wikipedia.org/wiki/Basic_access_authentication
分享到:
相关推荐
### HTTP协议头字段及分析 #### 一、概述 HTTP(HyperText Transfer Protocol)作为互联网上应用最为广泛的一种网络协议,主要用于规定客户端与服务器之间如何通信。它是一种基于请求与响应模型的应用层协议,用于...
总之,通过Nginx的`proxy_set_header`指令,我们可以方便地在HTTP请求头中添加自定义字段,这对于实现API接口的版本控制、增加请求元信息或者满足特定业务需求都非常有用。理解并灵活运用这一特性,能够提升Nginx...
在HTTP协议中,这些信息被称为“Header头信息”,它们用于提供关于请求或响应的消息体的一些元数据。这些信息对于正确处理HTTP请求和响应至关重要,包括但不限于缓存控制、日期、认证等。 #### 三、常用Header头...
1. **HTTP请求头**:理解HTTP请求头的构成,如User-Agent、Accept、Cookie等字段的作用,以及它们如何影响网络请求。 2. **Chrome扩展**:了解Chrome浏览器的扩展机制,知道如何安装和使用CRX扩展文件,如ModHeader...
在 HTTP 协议中,请求头(Request Header)是指客户端向服务器发送请求时,所携带的一些附加信息。这些信息可以是身份验证信息、客户端信息、缓存信息、代理信息等。请求头的格式为“名称:值”,例如“Accept:text...
例如,设置或读取Header字段,进行网络请求时添加自定义头信息,或者解析服务器返回的头信息来获取必要的数据。 "关于http header头信息的一些基础知识(搜集).txt"可能包含了一些基本概念和实例,"header.txt...
它是URI的一部分,但为了向后兼容HTTP/1.0的客户端,它被作为一个单独的请求头字段。 11. **If-Modified-Since**:这个请求头用于告知服务器只返回在指定日期之后有所更改的资源。如果资源未更改,则服务器可以返回...
Chrome Header Editor通过修改请求头中的某些字段,可以帮助用户绕过这种限制,例如,可以改变用户代理字符串来模拟不同的浏览器或设备,或者调整请求频率以避免被视为异常流量。 插件的配置文件是关键组成部分,它...
#### HTTP协议详解之请求篇 HTTP请求主要包含三个部分:请求行、消息报头和请求正文。 1. **请求行**:请求行包含请求方法、请求的统一资源标识符(URI)和HTTP协议版本,格式为`Method Request-URI ...
我们可以使用 setRequestProperty 方法来添加自定义的请求头字段,例如 Test Header1 和 Test Header2。这两个字段可以根据需要添加或删除。 最后,让我们总结一下 Java 获取 HTTP 请求头的方法。Java 提供了多种...
Encoding 字段、Content-Language 字段、Content-Length 字段、Content-Location 字段、Content-MD5 字段、Content-Range 字段、Content-Type 字段、Expires 字段、Last-Modified 字段和 extension-header 字段。...
* 头部字段(Header Field):包括头部信息,如 Accept、Accept-Language、Host 等。 * 空行(Blank Line):用于分隔头部字段和主体部分。 * 主体部分(Body):包括 HTTP 协议的主体部分,如 HTML 代码等。 结论 ...
HTTP头部(Header)是HTTP请求和响应中的一个重要组成部分,它包含了关于HTTP消息的元数据信息,例如客户端能接受哪些类型的内容、客户端使用的语言、客户端或服务器的时间戳等。 #### Accept **定义:** Accept...
在进行网络爬虫时,了解并正确设置Request Header(请求头)是非常关键的步骤,因为很多网站会利用请求头中的信息来验证用户身份或防止爬虫。请求头是HTTP协议的一部分,它包含了发送请求的客户端(通常是浏览器)的...
SIP协议的消息结构包括起始行(Start Line)、头部字段(Header Fields)、空行(CRLF)以及可选的消息体(Message Body)。起始行包含请求行(用于请求消息)或状态行(用于响应消息)。头部字段则包含了许多重要的...
在HTTP通信中,头字段(Header Fields)扮演着至关重要的角色,它们提供了请求和响应的上下文信息,以及关于实体(Entity)的元数据。我们将分别探讨这四类头字段的详细内容。 **General Header Fields(通用头)**...
请求消息示例包括 GET 请求行、头域和实体。 响应消息结构类似于请求消息,但是状态行由协议版本、状态码、原因短语 3 个元素组成,各个元素之间用 SP 分隔。状态码字段由三个数字组成,标识客户请求方法的结果。...
- **请求行**:在请求报文中,起始行是请求方法(如GET、POST)、请求目标(URI)和HTTP协议版本号。例如,"GET / HTTP/1.1"表示客户端希望获取服务器的首页资源,使用的是HTTP 1.1协议。 - **状态行**:在响应...