Http协议

HTTP


1、作用:描述客户端和服务器端数据的传递的协议

2、全称:HyperText Transfer Protocol超文本传输协议。超文本:HTML

3、版本:1.0   1.1(主流)

4、HTTP1.0 VSHTTP1.1 (主要区别)

1.0:无状态协议。每次访问服务器都需要建立一次网络连接,耗费时间和资源

1.1:可以在一次网络连接基础之上,发出很多次请求和收到很多次响应。

http协议是建立在TCP协议基础上。http协议也是基于请求与响应的模型,http协议默认的端口是80.

5、明确几个问题:

带有连接的标记,比如:<img src=””/>  <linkhref=””/>  <script src=””/>,浏览器遇到这些标记,会自动向服务器发出请求。

http请求

    

请求消息头

作用:向服务器端传递一些附加信息。

形式:1、Header-Name headerValue1,heaerValue2

2、Header1:headerValue1

                  Header1:headerValue2

注意:一个头2个值和两个同名头和值是不同的。

常用的请求消息头:

Accept:告知服务器,浏览器能够接受的数据MIME类型。

MIME类型:

磁盘文件系统中:文件的扩展名区分不同的文件的。

网络中:通过数据的MIME类型区分数据的。

他们之间有对应关系:查阅Tomcat\conf\web.xml

<mime-mapping>

       <extension>txt</extension><!--磁盘文件的扩展名-->

      <mime-type>text/plain</mime-type><!--txt文件对应的MIME类型-->

 </mime-mapping>

MIME特点:大类型/小类型

Accept-Charset:告知服务器,客户端能接受的字符集。

*Accept-Encoding:告知服务器,客户端支持的压缩编码。比如gzip

Accept-Language:告知服务器,客户端支持的语言。(可以通过浏览器设置)

*Referer:告知服务器,当前页面是由哪个页面转过来的。用户如果是直接访问的,没有这个头。

*Content-Type:告知服务器。客户端提交的请求正文的MIME类型。默认是application/x-form-data-urlencodedusername=abc&password=123)。可以通过表单formenctype属性指定。可选值multipart/form-data(文件上传)

*If-Modified-Since:告知服务器,本地缓存的资源的最后的修改时间。

*User-Agent:告知服务器,客户端使用的浏览器的类型

*Content-Length:告知服务器,客户端发送的请求正文内容的长度

Connection:告知服务器,需要持久连接

*****Cookie:向服务器发送cookie数据


8、响应部分详解(服务器发给客户端的)

8.1响应行

HTTP/1.1 200 OK

----------------------------

HTTP/1.1:响应使用的协议及版本号

----------------------------

200:响应状态码。说明了本次请求的结果状态

1XX

2XX:一切正常

3XX

4XX:访问的资源有问题

5XX:访问的资源运行出错了(出现异常)

 

常用的响应码:(目前用到了就30个左右,其他的是W3C保留的)

200:一切OK

302、307:临时重定向

304:客户端请求的内容木有更改(没有更新)

404:访问的资源不存在

500:服务器内部错误。一般出现在服务端程序出现异常

----------------------------

OK:对响应码的文字描

响应正文

浏览器收到的数据,这些数据都是HTML。浏览器进行展现。(右键看源码,实际上就是看的响应的正文)

响应消息头

作用:向客户端传递一些附加信息

常用的响应消息头:

*Location:指向一个地址。经常和302响应码实现请求重定向。

Server:告知客户端,服务器端使用的服务器(软件)的类型。

*Content-Encoding:告知客户端,服务器使用的压缩编码。比如gzip(压缩格式)

*Content-Length:告知客户端,请求正文的内容长度。

*Content-Type:告知客户端,请求正文的MIME类型。

*Content-Type:text/html;charset=UTF-8(正文为超文本,编码用的是UTF-8)

*Refresh:告知客户端,定时刷新

*Content-Disposition:告知客户端,请使用下载的方式打开

Content-Disposition=attachment;filename=1.jpg

*****Set-Cookie:会话管理

*一起来告诉客户端不要缓存:

Expires: -1

Cache-Control: no-cache (1.1) 

Pragma: no-cache   (1.0)

 

 

 



 





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值