什么是Http协议

原创 2015年07月07日 23:05:24
一、HTTP协议
1.1协议的作用及版本
1.1.1HTTP是Hyper Text Transfer Protocol(超文本--html传输协议)。
1.1.2HTTP协议的作用用户描述客户端与服务器间的数据传递的。
1.1.3:Http协议的版本:
1.0:特点:每次请求服务器上的资源都要建立新的连接,响应完毕后都会关闭连接。是无状态的协议。
1.1:特点:在一次TCP/IP连接的基础上可以发出多次请求和得到多次的响应。比1.0多了一些请求和响应头。
1.2协议的组成
1.2.1请求部分:
GET /App1/1.html HTTP/1.1
Accept: */*
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Host: localhost:8080
Connection: Keep-Alive
username=admin&password=123
请求部分由三部分组成的:
请求行:位于第一行
请求消息头:从第二行开始至第一个空行结束
请求正文:从第一个空行之后的都是正文
1.2.2响应部分:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Accept-Ranges: bytes
ETag: W/"65-1366335797484"
Last-Modified: Fri, 19 Apr 2013 01:43:17 GMT
Content-Type: text/html
Content-Length: 65
Date: Fri, 19 Apr 2013 02:06:23 GMT
Warnning:w1
Warnning: w2

hello http
<a href="b.html">click</a>
<img src="1.jpg"/>

响应部分由三部分组成的:
响应行:位于第一行
响应消息头:从第二行开始至第一个空行结束
响应正文:从第一个空行之后的都是正文
1.3协议详细讲解
请求行:GET /App1/1.html HTTP/1.1
GET:请求方式。默认的请求方式。其他常用的请求方式还有POST。
GET的特点:默认的请求方式。
/App1/c.html?username=sdsfds&password=234324
把表单的请求的数据放在了请求的URI的后面。?username=sdsfds&password=234324
这样不好:暴露数据;请求行长度有限。
POST的特点(经常使用的):借助HTML中的form表单。<form action="c.html" method="post">
请求参数出现在正文部分。长度木有限制。相对安全。
---------------------------
/App1/1.html:请求的资源的URI。
---------------------------
HTTP/1.1:客户端使用的协议的版本
响应行:HTTP/1.1 200 OK
HTTP/1.1:服务器用的协议版本
200:响应码。代表服务器处理的结果的一种表示
200:正常
302/307:重定向
304:服务器的资源没有被修改
404:请求的资源不存在
500:服务器报错了
OK:响应码描述
请求消息头:向服务器传递附加信息
Accept:通知服务器,浏览器可以接受的MIME类型。(文件系统中用文件扩展名区分数据的类型。网络上用MIME类型来区分数据类型。Tomcat\conf\web.mxl)
MIME类型名称:大类型/小类型
Accept-Charset:通知服务器,浏览器支持的字符集
Accept-Encoding:通知服务器,浏览器能够解码的数据压缩方式。比如:gzip
Accept-language:通知服务器,所希望的语言
Host:请求的主机和端口
*Referer:是一个URL地址。取值是当前页面之前的那个页面地址的。防盗链
*Content-Type:通知服务器,请求正文的MIME类型。
取值:application/x-www-form-urlencoded默认值
对应的是form表单的enctype属性
If-Modified-Since:通知服务器,缓存的文件的最后修改时间。
User-Agent:通知服务器,浏览器类型.
Content-Length:表示请求消息正文的长度 
Connection:表示是否需要持久连接。如果服务器看到这里的值为“Keep -Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久连接 
*****Cookie:这是最重要的请求头信息之一(会话有关)
响应消息头:
*Location:通知客户端,指示新的资源的位置(结合302/307来用。请求重定向)
Server:通知客户端,服务器的类型
*Content-Encoding:通知客户端,响应正文的压缩编码方式。常用的是gzip。
*Content-Length:通知客户端响应正文的数据大小
*Content-Type:通知客户端响应正文的MIME类型
*Refresh:让浏览器自动刷新。取值为整数(刷新的时间间隔,单位是秒)
Refresh:3
Refresh:3;URL=其他资源的URI
*Content-Disposition:通知客户端,以下载的方式打开资源。
Content-Disposition:attachment;filename=1.jpg
*****Set-Cookie:SS=Q0=5Lb_nQ; path=/search服务器端发送的Cookie(会话有关)
*Expires: -1             网页的有效时间。单位是毫秒
*Cache-Control: no-cache (1.1)  
*Pragma: no-cache   (1.0)                               通知客户端不要缓存

版权声明:本文为博主原创文章,未经博主允许不得转载。

什么是HTTP协议

什么是HTTP协议
  • pingdouble
  • pingdouble
  • 2016年02月15日 11:14
  • 2790

HTTP协议是无状态协议,怎么理解?

Http是一个无状态协议,同一个会话的连续两个请求互相不了解,他们由最新实例化的环境进行解析,除了应用本身可能已经存储在全局对象中的所有信息外,该环境不保存与会话有关的任何信息。 自己的理解,在asp...
  • yzl21061
  • yzl21061
  • 2013年12月18日 18:13
  • 2873

什么是http协议?

1 什么是协议?什么又是http协议? 答:协议是多方协商最终达成一致,或者共同遵守的规则;而http协议这是客户端与服务端共同遵守的规则。 http协议的内容:...
  • Roy_Wujigao
  • Roy_Wujigao
  • 2017年09月01日 11:11
  • 66

什么是HTTP协议?

HyperText  Transfer Protocol 超文本传输协议。 是由w3c(万维网联盟)
  • u010090491
  • u010090491
  • 2014年08月10日 14:42
  • 188

什么是HTTP协议??

超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接...
  • shangirl
  • shangirl
  • 2016年04月23日 17:11
  • 283

从HTTP协议分析转发和重定向的区别

 【文章标题】从HTTP协议分析转发和重定向的区别【文章作者】曾健生【作者邮箱】zengjiansheng1@126.com【作者QQ】190678908【作者MSN】zengjiansheng1@h...
  • newjueqi
  • newjueqi
  • 2009年11月07日 14:37
  • 4855

HTTP协议-什么是HTTP协议

HTTP协议-什么是HTTP协议   HTTP协议(Hypertext Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更...
  • bestlove12345
  • bestlove12345
  • 2016年07月04日 10:46
  • 227

什么是http协议 http协议的请求方法

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式: OPTIONS返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器...
  • jinxingfeng_cn
  • jinxingfeng_cn
  • 2016年07月13日 06:09
  • 3392

基础的http协议构成

在学校里,有一门计算机网络专业课,专门讲到过http,以前做web开发急功近利,也没仔细研究过它,只能够分清GET和POST的区别,但对http协议的细节的理解是编写WEB程序的开发人员必须的,今天详...
  • JohnLongYuan
  • JohnLongYuan
  • 2016年03月20日 11:37
  • 1420

http协议介绍(servlet)

http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的We...
  • peace1213
  • peace1213
  • 2015年11月18日 19:04
  • 2518
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:什么是Http协议
举报原因:
原因补充:

(最多只允许输入30个字)