用于HTTP请求中的常用请求头字段
Accept:用于高速服务器,客户机支持的数据类型
Accept-Charset:用于告诉服务器,客户机采用的编码格式
Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式
Accept-Language:客户机的语言环境
Host:客户机通过这个头高速服务器,想访问的主机名
If-Modified-Since:客户机通过这个头告诉服务器,资源的缓存时间
Referer:客户机通过这个头告诉服务器,它是从哪个资源来访问服务器的(防盗链)
User-Agent:客户机通过这个头告诉服务器,客户机的软件环境
Cookie:客户机通过这个头可以向服务器带数据
Connection:处理完这次请求后是否断开连接还是继续保持连接
Date:当前时间值
HTTP响应
状态行:用于描述服务器对请求的处理结果。
状态码:100~199:表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程。
200~299:表示成功接收请求并已完成整个处理过程。常用200
300~399:为完成请求,客户需进一步细化请求。例如:请求的资源已经移动一个新地址、常用302(意味着你请求我,我让你去找别人),307和304(我不给你这个资源,自己拿缓存)
400~499:客户端的请求有错误,常用404(意味着你请求的资源在web服务器中没有)403(服务器拒绝访问,权限不够)
500~599:服务器端出现错误,常用500
多个响应头:响应头用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理等一会儿它回送的数据。
Location:这个头配合302状态码使用,用于告诉客户找谁。
Server:服务器通过这个头告诉浏览器服务器的类型。
Content-Encoding:服务器通过这个头告诉浏览器数据的压缩格式。
Content-Length:服务器通过这个头告诉浏览器回送数据的长度
Content-Type:服务器通过这个头告诉浏览器回送数据的类型
Last-Modified:告诉浏览器当前资源的最后缓存时间
Refresh:告诉浏览器隔多久刷新一次
Content-Disposition:告诉浏览器以下载方式打开数据
Transfer-Encoding:告诉浏览器数据的传送格式
ETag:缓存相关的头
········三种禁止浏览器缓存的头字段:
Expires:告诉浏览器把回送的资源缓存多长时间 -1或0则是不缓存
Cache-Control:no-cache
Pragma:no-cache
服务器通过以上两个头,也就是控制浏览器不要缓存数据
实体内容:代表服务器向客户端回送的数据
5.请列举三种禁止浏览器缓存的头字段,并写出相应的设置值。
解答:
1.HTTP1.0对于每个连接都的建立一次连接一次只能传送一个请求和响应,请求就会关闭,HTTP1.0没有Host字段;
而HTTP1.1在同一个连接中可以传送多个请求和响应,多个请求可以重叠和同时进行,HTTP1.1必须有Host字段。
2.请求消息结构:一个请求行、若干消息头、以及尸体内容,当中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
响应消息结构:一个状态行、若干消息头、以及尸体内容,当中的一些消息头和实体内容都是可选的,消息头和实体内容之间要用空行隔开。
两者的区别:就是请求消息有请求行,响应消息有状态行。
GET /mail/aa.html HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: zh-CN
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: localhost:8080
If-Modified-Since: Wed, 17 Oct 2012 09:35:13 GMT
If-None-Match: W/"62-1350466513174"
Connection: Keep-Alive
HTTP/1.1 304 Not Modified
Server: Apache-Coyote/1.1
ETag: W/"62-1350466513174"
Date: Wed, 17 Oct 2012 09:45:38 GMT
3.数据量不大,因为GET方式数据量限制1K,不带有保护数据的情况下使用GET方式访问WEB服务器;数据量大,而且带有需要保护的数据时使用POST方式访问WEB服务器。
如果浏览器传送服务器的数据量超过1K,应使用POST方式访问服务器,因为POST方式向服务器传送是数据时,会先把传送的数据打包发送到WEB服务器。
4.响应状态吗表示的意义:
200:表示成功,正常结果;
302:表示重定向,转到别的站点;
304:表示未修改;
404:表示找不到资源;
500:表示内部服务器错误;
5.Expires:告诉浏览器把回送的资源缓存多长时间 -1或0则是不缓存
Cache-Control:no-cache
Pragma:no-cache
相关推荐
获得请求头的各种参数信息jsp代码: 客户使用的协议是: HTTP/1.1 获取接受客户提交信息的页面: /004.jsp 接受客户提交信息的长度: -1 客户提交信息的方式: GET 获取 HTTP 头文件中 User-Agent 的值:: ...
在某些场景下,我们可能需要对HTTP请求的参数进行动态处理,比如加密,以符合实际应用中的安全需求。本文将详细探讨如何使用BeanShell在JMeter中实现这个功能。 首先,BeanShell是JMeter内置的一个脚本引擎,允许...
- 设置Header:可以添加如Content-Type等HTTP头,也可以使用动态参数。 - 设置Body:POST请求的主要内容,可以是JSON、XML或其他格式,同样可以使用动态参数。 4. 动态参数的使用:在Kettle中,可以使用变量...
5. **HTTP头参数数据注入**:Lesson 18演示了如何通过HTTP头中的信息进行注入。 为了进行有效的安全测试,我们需要模拟这些情况,对每个参数和请求方法进行详尽的测试,确保所有输入都经过适当的验证和过滤。在上述...
4. **HTTP头参数**:虽然不常见,但在某些场景下,如认证信息,可以将参数放在HTTP头部。 在实现这些方法时,蒋金楠老师可能还会讲述如何配置WCF服务以支持REST,包括设置`WebHttpBinding`绑定,启用`WebHttp`行为...
在这个场景中,我们关注的是如何利用Kettle传递动态参数并调用HTTP POST接口将数据入库。下面将详细阐述这个过程。 1. **Kettle简介** Kettle是一款开源的ETL工具,它提供了图形化的界面,使得用户可以通过拖拽和...
通过增加额外的、异常的HTTP头参数,干扰WAF的规则匹配,例如在`Filename`字段中混入大量无关字符,或者使用不常见的参数命名。 10. **大小写变换**: 在某些情况下,WAF可能未考虑到大小写的敏感性,通过改变...
### HTTP格式详解与HTTP传输协议参数深度解析 #### 核心知识点:HTTP协议基础与请求结构 HTTP(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议,它是一种用于分布式、协作式和超媒体信息系统...
在Java Web开发中,我们经常需要处理HTTP请求,其中包含了客户端传递给服务器的数据。这些数据通常以请求参数的形式存在,例如URL查询参数、POST表单数据等。在某些情况下,我们可能需要在服务器端动态地修改这些...
java后台请求http从而获取数据,这里支持头部参数,比如可以在头部加入orgCode、username、password等必填数据。可以达到postman请求效果
通过正则表达式解析http头信息 返回结构体包含: 方法: GET/POST 路径 可选头 GET参数 POST参数 方便开发微型web服务器 正则表达式出自AoGo的express库 该库只有5kb,体积小,功能强,效率高!
这是因为HTTP协议本身并不处理字符编码,而是依赖于上层的应用层协议(如HTTP头或者POST数据)来处理字符集。当涉及到非ASCII字符,如中文,不正确的编码处理会导致乱码。微软提供的CHttpConnect类在处理这种场景时...
在HttpClient中,我们可以通过`HttpPost`类创建一个POST请求对象,然后设置请求的URL和参数。 1. 创建`HttpPost`对象:`HttpPost httpPost = new HttpPost("http://example.com/api");` 2. 添加普通参数:使用`...
Java Swagger UI 添加 Header 请求头参数的方法 在本文中,我们将学习如何在 Java 项目中使用 Swagger UI 添加 Header 请求头参数。Swagger 是一个非常流行的 API 文档生成工具,能够帮助开发者快速生成 API 文档和...
尽管它被称为“无参数”,但实际上仍然可以通过其他方式向服务器传递必要的信息,例如通过请求头(header)或者查询字符串(query string)。这种方式的主要用途是在不发送具体数据的情况下,通知服务器执行某些操作...
通常,Controller方法的返回值会自动转换为响应体,可以是字符串、模型AndView对象、HttpEntity、或者使用`@ResponseBody`注解的自定义类型。例如: ```java @GetMapping("/hello") public String hello() { ...
在PHP开发中,有时我们需要通过HTTP头(Header)传递自定义信息,比如认证令牌、请求来源等。然而,有时我们可能会遇到PHP无法正确获取自定义Header参数的问题。本篇文章将详细解析这一问题,并提供解决方案。 首先...
这个扩展可以让用户自定义HTTP请求头,方便开发者在测试和调试时调整请求参数。安装CRX文件需要在Chrome的扩展管理界面开启开发者模式,然后拖拽CRX文件进行安装。 "去脚本之家看看.url"和"服务器软件.url"看起来像...
网址前缀:包括http://在内的网址前缀 域名:包含子域名在内的完整的域名 网址:包括“?”及之后的所有内容的完整地址 2、排除规则 不论是否满足匹配规则,只要满足了排除规则,那么此条均不会对当前URL...
CloseableHttpClient调用三方HTTP接口,带有FILE文件类型参数