`

http头参数

    博客分类:
  • http
 
阅读更多

用于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
服务器通过以上两个头,也就是控制浏览器不要缓存数据

实体内容:代表服务器向客户端回送的数据

 

l200(正常)
表示一切正常,返回的是正常请求结果。
l302/307(临时重定向)
指出被请求的文档已被临时移动到别处,此文档的新的URL在Location响应头中给出。
l304(未修改)
表示客户机缓存的版本是最新的,客户机应该继续使用它。
l403(禁止)
服务器理解客户端请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置所致。
l404(找不到)
服务器上不存在客户机所请求的资源。
l500(内部服务器错误)
服务器端的CGI、ASP、JSP等程序发生错误。

 

 

1.请按自己的理解简述HTTP 1.1与HTTP 1.0的区别。
2.请描述HTTP请求消息和HTTP响应消息的组成结构,并各举一例进行说明。
3.浏览器分别在哪些情况下使用GET方式和POST方式访问WEB服务器?如果浏览器传递给WEB服务器的参数内容超过1K,应该使用那种方式发送请求消息?
4.请描述200、302、304、404和500等响应状态码所表示的意义。

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

分享到:
评论

相关推荐

    C++Http上传文件到web服务器,解决中文参数乱码

    C++Http上传文件到web服务器,解决中文参数乱码问题,微软提供的Chttpconnect 类在请求http头参数是中文时出现乱码

    获得请求头的各种参数信息jsp代码

    获得请求头的各种参数信息jsp代码: 客户使用的协议是: HTTP/1.1 获取接受客户提交信息的页面: /004.jsp 接受客户提交信息的长度: -1 客户提交信息的方式: GET 获取 HTTP 头文件中 User-Agent 的值:: ...

    JMeter beanShell修改http请求参数

    JMeter beanShell修改http请求参数,尝试对http进行修改。

    调用http请求(包括head头部的请求)

    java后台请求http从而获取数据,这里支持头部参数,比如可以在头部加入orgCode、username、password等必填数据。可以达到postman请求效果

    数据抽取-Kettl动态参数调用HTTP、POST接口

    数据抽取-Kettl动态参数调用HTTP、POST接口

    正则表达式解析HTTP头信息

    通过正则表达式解析http头信息 返回结构体包含: 方法: GET/POST 路径 可选头 GET参数 POST参数 方便开发微型web服务器 正则表达式出自AoGo的express库 该库只有5kb,体积小,功能强,效率高!

    window.open的例子和使用方法以及参数说明

    windows.open这个是JavaScript函数,但是在应用起来的时候总会遇到比较多的麻烦,因为参数非常多,用法也非常的多

    chrome插件修改请求头

    网址前缀:包括http://在内的网址前缀  域名:包含子域名在内的完整的域名  网址:包括“?”及之后的所有内容的完整地址  2、排除规则  不论是否满足匹配规则,只要满足了排除规则,那么此条均不会对当前URL...

    伪造HTTP头VB 编写 源码 实例

    伪造HTTP头VB 编写 源码实例 自己编写 亲测

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    Unity 中通过UnityWebRequest 以GET形式传authorization 的参数请求数据。

    Unity 中通过UnityWebRequest 以GET形式传authorization 的参数请求数据。 注意: 以Header头文件的形式发送请求,authorization要放入请求头部。 以头文件形式发起请求进行Token验证,token为Authorization中的...

    富头像上传编辑器演示

    在线演示:http://www.fullAvatarEditor.com/demo.html 当前版本:2.3 更新内容: → 修复头像与实际选取区域偏移 1 像素的BUG; 修复默认加载的原图如果有定位数据时图片不显示的BUG。 → 发布时间:2015-04-22 ...

    仿微信登录界面+回调参数

    在之前的仿微信登录界面的基础上,增加了回调参数的功能。将注册的手机号以intent组件传递给登录界面的手机号编辑框内。

    易语言 http读文件

    程序集_附加协议头 = 参数_附加协议头 程序集_提交信息 = 参数_提交信息 程序集_页面内容 = 取空白字节集 (0) .如果真 (是否为空 (参数_超时值) 或 参数_超时值 = 0) 参数_超时值 = 8 .如果真结束 开始时间 = ...

    HttpClient入门基础教程高清晰PDF.pdf

    HTTP 参数 bean HTTP 请求执行参数 第二章 连接管理 连接参数 持久连接 HTTP 连接路由 路由计算 安全 HTTP 连接 HTTP 路由参数 套接字工厂 安全套接字分层 SSL/TLS 的定制 主机名...

    Flash头像上传剪裁预览组件 v2.0.rar

    1.上传到 apache,iis,tomcat 服务器,通过**访问 index.html 例如:http://localhost/index.html 2.确定存储图片目录可写权限, iis win 存储图片目录是 everyone 用户,apache linux,需要可写权限(777) 3.调试...

    Nginx设置日志打印post请求参数的方法

    【前言】  我们项目的短信功能是接第三方,原来对接第三方给我们回执确认请求是get请求我们在... 一、Nginx配置文件(nginx.conf)设置打印post请求参数:在http模块的log_format中增加 “dm”:$request_body 防止中

    nginx 内置变量详解及隔离进行简单的拦截

    $http_name 任意请求头的值;变量名的后半部为转化为小写并且用下划线替代横线后的请求头名称。 $host “Host”请求头的值,如果没有该请求头,则为与请求对应的虚拟主机的首要主机名。 $query_string 与$args相同。...

    ajax中send的用法

    使用send方法传递参数使用的是POST方法,需要设定Content-Type头信息,模拟HTTP POST方法发送一个表单,这样服务器才会知道如何处理上传的内容。参数的提交格式和GET方法中url的写法一样。设置头信息前必须先调用...

Global site tag (gtag.js) - Google Analytics