HTTP协议总结

HTTP 协议:

1.什么是协议?

  数据的格式.

 

2.HTTP协议.

   Http协议是用来定义 web浏览器与web服务器之间交换数据的格式的专用的.

 

3.实验一:通过telnet 连接程序

    a)打开dos命令行窗口 : telnet localhost 8080

    b) 解决乱码 :

       ctrl + ]  

    c) 乱码解决后,去访问tomcat首页.

GET / HTTP/1.1

Host:

 

GET / HTTP/1.0

Host:

 

  实验二:在IE安装Httpwatch插件

    重启 ie, 然后点击 查看 -- 浏览器栏, 就可以找到安装的HTTP watch插件了.

 

HTTP1.0 与 HTTP 1.1的区别

    1.0 一次只可以连上一个web资源.

    1.1 一次可以连上多个web资源, 并且保持一段时间不断开连接.

 

4.HTTP请求

    请求行: GET /day02/1.html HTTP/1.1

    请求体: key=value,value (一个key可以对应多个value)

 

 =========get方式的请求与post方式的请求的区别===================

  a) get方式的请求 :  GET /day02/1.html HTTP/1.1

     post方式的请求:  POST /day02/1.html HTTP/1.1

  b)数据的提交方式也不同: get的请求数据会跟在url地址后面

    get: http://localhost:8080/day02/1.html?username=lijianqun&age=19

    post: http://localhost:8080/day02/1.html ,那么post方式的数据是放在了请求体中

  c) get方式木有 请求体. 而 post方式有.

  

   一般都采用 post方式的请求.  如果表单提交就采用 post.

    除了表单提交的时候可以设置成post方式外,其他的请求都是get方式.

 

   d) 实际开发过程中,如果给用户一个超链接, 而用户点击的时候,又希望用户可以带一些数据过来.

    <a href="/day02/img.html?name=wangpan">小样儿,来点我啊</a>

 

 注意: GET方式的特点:在URL地址后附带的参数是有限制的,其数据容量通常不能超过1K。

       post方式请求的数据由于跟在请求体中的, 所以请求的数据就没有大小限制了.

 

请求头含义详解:

 

Accept: text/html,image/*    表示 客户端 接受的数据格式.

Accept-Charset: UTF-8    表示客户端采用的编码集

Accept-Encoding: gzip,compress  表示客户端支持的数据压缩格式. gzip压缩. (重点)

Accept-Language: en-us,zh-cn    客户端接受的语言种类

Host: www.it315.org:80      表示客户端要访问的主机名

If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT   ( 重点 )

Referer: http://www.it315.org/index.jsp    防盗链

User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) 客户端采用什么浏览器来访问的页面.

Connection: close/Keep-Alive    继续保持连接还是断开

Date: Tue, 11 Jul 2000 18:23:51 GMT    客户端访问服务器的时间.

 

5.HTTP响应

 

响应行:  HTTP/1.1 200 OK

   

 

 

6.常用的响应状态码

1xx: 请求信息不完整. informational

2xx: success , 成功处理请求

3XX: redirection. 请求"重定向".

4xx: client error , 客户端出现错误,资源不存在

5xx: 服务器端内部错误. server error

 

    200 , 302 ,304,404,500

 200 : 表示一切OK, 服务器完美的完成了整个响应.

 302 : 一般会与location响应头一起实现请求重定向,  (重点)

 304 :请求的资源未改变,通知客户端直接到本地拿缓存.

 404 :请求的资源不存在, 一般 表示 请求的路径有问题.  401 ,403

 500 : 请求的时候服务器端出现了错误.

 

7. 常用的响应头详解:

响应头:

Location: http://www.it315.org/index.jsp   与302  一起实现请求重定向,

Server:apache tomcat         告诉客户端,服务器的类型.

Content-Encoding: gzip       服务器给客户机回写数据时采用的压缩格式 gzip

Content-Length: 80           服务器给客户机回写数据的大小

Content-Language: zh-cn       服务器给客户机回写数据采用的是什么语言.

Content-Type: text/html; charset=GB2312   服务器给客户机回写数据采用的是什么字符集

Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT  重点 : If-Modified-Since , 304 一起实现缓存

Refresh: 1;url=http://www.it315.org    通知客户端 定时刷新到某个页面.

Content-Disposition: attachment; filename=aaa.zip 文件下载的,(重要)

 

实现客户端禁用缓存.

Expires: -1

Cache-Control: no-cache 

Pragma: no-cache  

 

Connection: close/Keep-Alive     继续保持连接还是断开

Date: Tue, 11 Jul 2000 18:23:51 GMT  服务器回写数据的时间.

 

=======================重点======================================

1) 302 + Location 完成请求重定向

   

   

2) refresh 自动刷新

   

3) gzip压缩

    a) 用程序代码实现压缩.

    b) 通过配置tomcat 服务器来实现压缩.

    在server.xml中的connector中配置

    compressableMimeType="text/html,text/xml,text/plain" compression="on"

 

压缩前:   00:00:00.000   1.163  11599  GET 200 text/html;charset=ISO-8859-1    http://localhost:8080/

压缩后:    00:00:00.000 1.150  2296   GET 200 text/html;charset=ISO-8859-1    http://localhost:8080/

 

 

4) Tomcat默认缓存策略 If-Modified-Since Last-Modified 结合304 实现

http://localhost:8080/tomcat.css

第一次访问: Last-Modified:     Sun, 05 May 2013 00:55:08 GMT

 

第二次访问: If-Modified-Since: Sun, 05 May 2013 00:55:08 GMT

   

 

5) 禁用缓存

实现客户端禁用缓存.

Expires: -1

Cache-Control: no-cache 

Pragma: no-cache  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值