1. Accept: 请求报头域用于指定客户端接受哪些类型的信息。
"Accept" ":" #( media-range [ accept-params ] )
如:text/*;q=0.3, text/html;q=0.7, text/html;level=1,
text/html;level=2;q=0.4, */*;q=0.5
2. Accept-Charset:指定客户端接受的字符集
"Accept-Charset" ":" 1#( ( charset | "*" )[ ";" "q" "=" qvalue ] )
如:Accept-Charset: iso-8859-5, unicode-1-1;q=0.8
3. Accept-Encoding:指浏览器可以支持的web服务器返回内容编码类型
"Accept-Encoding" ":" 1#( codings [ ";" "q" "=" qvalue ] )
如:Accept-Encoding: gzip;q=1.0, identity; q=0.5, *;q=0
4. Accept-Language:指定一种假设浏览器可接受的语言
"Accept-Language" ":" 1#( language-range [ ";" "q" "=" qvalue ] )
如:Accept-Language: da, en-gb;q=0.8, en;q=0.7
5. Accept-Ranges:可以请求网页实体的一个或者多个子范围字段
"Accept-Ranges" ":" acceptable-ranges | none
一般不建议携带此消息头
6. Authorization:HTTP授权的授权证书,返回401(未授权)时可以使用
"Authorization" ":" credentials
如:Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
7. Cache-Control:指定请求和响应遵循的缓存机制
"Cache-Control" ":" 1#cache-directive
cache-request-directive =
"no-cache" ; Section 14.9.1
| "no-store" ; Section 14.9.2
| "max-age" "=" delta-seconds ; Section 14.9.3, 14.9.4
| "max-stale" [ "=" delta-seconds ] ; Section 14.9.3
| "min-fresh" "=" delta-seconds ; Section 14.9.3
| "no-transform" ; Section 14.9.5
| "only-if-cached" ; Section 14.9.4
| cache-extension ; Section 14.9.6
cache-response-directive =
"public" ; Section 14.9.1
| "private" [ "=" <"> 1#field-name <"> ] ; Section 14.9.1
| "no-cache" [ "=" <"> 1#field-name <"> ]; Section 14.9.1
| "no-store" ; Section 14.9.2
| "no-transform" ; Section 14.9.5
| "must-revalidate" ; Section 14.9.4
| "proxy-revalidate" ; Section 14.9.4
| "max-age" "=" delta-seconds ; Section 14.9.3
| "s-maxage" "=" delta-seconds ; Section 14.9.3
| cache-extension ; Section 14.9.6
8. Connection:表示是否需要持久连接
"Connection" ":" 1#(connection-token)
默认持久连接。
9. Cookie: ...
10. Content-Length:请求的内容(message-body)长度
"Content-Length" ":" 1*DIGIT
不建议指定
11. Content-Type:请求的与实体对应的MIME信息
"Content-Type" ":" media-type
如: Content-Type: text/html; charset=utf-8
12. Date:请求发送的日期和时间
"Date" ":" HTTP-date
如:Date: Tue, 15 Nov 1994 08:12:31 GMT
13. Expect:请求的特定的服务器行为
"Expect" ":" 1#expectation
如:Expect: 100-continue
14. From:发出请求的用户的Email
"From" ":" mailbox
如:From: webmaster@w3.org
15. Host:指定请求的服务器的域名和端口号
"Host" ":" host [ ":" port ] ;
如:Host: www.w3.org
16. If-Match:只有请求内容与实体相匹配才有效
"If-Match" ":" ( "*" | 1#entity-tag )
如:If-Match: "xyzzy"
17. If-Modified-Since:如果请求的部分在指定时间之后被修改则请求成功,未被修改则返回304
"If-Modified-Since" ":" HTTP-date
如:If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
18. If-None-Match:如果内容未改变返回304代码,参数为服务器先前发送的Etag,与服务器回应
的Etag比较判断是否改变
"If-None-Match" ":" ( "*" | 1#entity-tag )
如:If-None-Match: "xyzzy"
19. If-Range:如果实体未改变,服务器发送客户端丢失的部分,否则发送整个实体。参数也为Etag
"If-Range" ":" ( entity-tag | HTTP-date )
如:If-Range: "xyzzy"
20. If-Unmodified-Since:只在实体在指定时间之后未被修改才请求成功
"If-Unmodified-Since" ":" HTTP-date
如:If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT
21. Max-Forwards:限制信息通过代理和网关传送的时间
"Max-Forwards" ":" 1*DIGIT
如:Max-Forwards: 10
22. Pragma:用来包含实现特定的指令
"Pragma" ":" 1#pragma-directive
如:Pragma: no-cache
23. Proxy-Authorization:连接到代理的授权证书
"Proxy-Authorization" ":" credentials
如:Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
24. Range:只请求实体指定范围的部分
"Range" ":" ranges-specifier
如:Range: bytes=500-999
25. Referer:跳转至当前页面来的那个网页地址
"Referer" ":" ( absoluteURI | relativeURI )
Referer: http://www.w3.org/hypertext/DataSources/Overview.html
26. TE:客户端愿意接受的传输编码,并通知服务器接受接受尾加头信息
如:TE: trailers,deflate;q=0.5
27. Upgrade:向服务器指定某种传输协议以便服务器进行转换(如果支持)
"Upgrade" ":" 1#product
如:Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
28. Via:通知中间网关或代理服务器地址,通信协议
"Via" ":" 1#( received-protocol received-by [ comment ] )
Via: 1.0 ricky, 1.1 mertz, 1.0 lucy
29. Warning:关于消息实体的警告信息
"Warning" ":" 1#warning-value
如:Warn: 199 Miscellaneous warning
30. User-Agent:包含发出请求的浏览器以及系统版本等信息
"User-Agent" ":" 1*( product | comment )
如:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
(注意:部分安全云盾可能会监测校验此内容)
相关推荐
HTTP 请求报头详解 HTTP 请求报头是 HTTP 协议中的一种重要机制,它允许客户端和服务器之间进行信息交换。报头字段可以分为四类:general-header、request-header、response-header 和 entity-header。 首先,...
用 Java 解析 HTTP 请求报头 在本文中,我们将学习如何使用 Java 语言解析 HTTP 请求报头。HTTP 请求报头是指客户端向服务端发送请求时所携带的信息,它包含了请求的方法、协议版本、请求 URL、主机信息、代理信息...
设置HTTP请求报头: 1. 创建IdHTTP组件:在Delphi的Form设计界面或代码中,首先创建一个TIdHTTP对象,例如: ```delphi var IdHTTP: TIdHTTP; begin IdHTTP := TIdHTTP.Create(nil); end; ``` 2. 设置报头字段:...
根据提供的文件信息,我们可以深入探讨HTTP请求报头的相关知识点,特别是如何在JSP、Servlet以及Struts等技术栈中处理这些报头。 ### HTTP请求报头的重要性 HTTP请求报头在客户端与服务器通信的过程中扮演着至关...
在Python爬虫的世界里,了解和正确使用HTTP请求报头是至关重要的。HTTP请求报头是客户端向服务器发送请求时附带的信息,包含了客户端的一些元数据,如浏览器类型、接受的文件格式、是否保持连接等。下面我们将深入...
请求报头用于向服务器提供有关客户端的信息以及请求的附加信息。 1. **Accept** - **功能**:用于指定客户端能够接受的内容类型。 - **示例**:`Accept: text/html`表示客户端希望接收HTML文本。 2. **Accept-...
总结一下,在Linux环境下,理解并操作HTTP协议涉及到学习HTTP请求报头的结构和作用,掌握使用`curl`、`tcpdump`、`wireshark`等工具进行网络数据包分析和调试的方法,以及利用HTTP服务器日志来追踪和分析请求。...
- 自制客户端:修改NetClient以发送包含真实HTTP请求报头的数据,连接到目标服务器并接收响应。 - 构造HTTP响应报头:服务器根据客户端请求构造响应报头,完成类似于真实Web服务器的交互。 实验过程中,学生不仅...
1、servlet与JSP技术概述 2、servlet基础 3、客户请求的处理:表单数据 4、客户请求的处理:HTTP请求报头 5、服务器响应的生成:HTTP状态代码 6、服务器响应的生成: HTTP响应报头 7、cookie...
1、servlet与JSP技术概述 2、servlet基础 3、客户请求的处理:表单数据 4、客户请求的处理:HTTP请求报头 5、服务器响应的生成:HTTP状态代码 6、服务器响应的生成: HTTP响应报头 7、cookie...
1、servlet与JSP技术概述 2、servlet基础 3、客户请求的处理:表单数据 4、客户请求的处理:HTTP请求报头 5、服务器响应的生成:HTTP状态代码 6、服务器响应的生成: HTTP响应报头 7、cookie...
第06章:Servlet与JSP核心技术课程--6、http请求报头-http请求报头(1).rmvb 第06章:Servlet与JSP核心技术课程--6、http请求报头-http请求报头(2).rmvb 第07章:Servlet与JSP核心技术课程--7、http状态代码-http状态...
第5章 客户请求的处理:http请求报头 5.1 请求报头的读取 5.2 制作所有请求报头的表格 5.3 了解http1.1请求报头 5. 4 发送压缩web页面 5.5 区分不同的浏览器类型 5.6 依据客户的到达方式定制页面 5.7 ...
Connexion中定义了多个成员变量,这些成员变量定义了连接的状态、位置、错误类型、套接字编号、超时值、HTTP请求报头以及用于存储下载网页数据的缓冲区。 在Connexion结构体的成员函数实现中,构造函数Connexion()...
+ 提取 HTTP 请求报头信息 + Cookie + 修改字符集 + 在服务器端保存值 八、JSP(Java Server Page) * 定义:动态网页 * 作用:与数据库有交互 * 创建步骤: 1. 写 Java 代码 2. 写 HTML、CSS、JavaScript ...
`HttpServerThread.h`中的类可能包含解析HTTP请求报头的方法。HTTP请求由起始行、头部字段和空行组成。解析这些部分需要对HTTP协议有深入理解。例如,可以使用`strstr()`函数查找特定字符串,以确定请求方法(GET、...
标准的HTTP请求报头可以通过注解访问,如@RequestHeader用于获取请求头的属性,而@RequestParam用于获取GET或POST请求的参数。此外,@PathVariable用于RESTful风格的URL中,以获取路径变量的值。对于PUT和DELETE等非...
在C++中封装HTTP报头,你需要创建一个类来代表HTTP请求或响应,包含上述字段,并提供方便的方法来设置和获取这些字段。同时,你需要实现发送和接收HTTP报文的功能,这可能涉及网络编程的基本概念,如套接字(socket...