首页 > 代码库 > HTTP协议

HTTP协议

一、HTTP协议简介

  客户端连上web服务器后,如果想获得web服务器中的某个web资源,需要遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通讯的格式。

  

  基于TCP链接的传输协议

  默认端口是80

  基于请求-响应模式的协议


  HTTP是Hypertext transfer protocol(超文本传输协议)的缩写,它是TCP/IP协议的一个应用层协议,用于定义web浏览器与文本服务器之间交换数据的过程。


二、HTTP协议的版本以及区别

  HTTP 1.0版本中,客户端与web服务器建立连接后,只能获取一个web资源。

  HTTP 1.1版本中,允许客户端与web服务器建立连接后,可以获取多个web资源。


三、HTTP的get及post请求

技术分享

请求:

    *请求行

        *请求方式

            *get、post、head等

            *常用的post和get

            *区别

                *get把参数显示在地址栏(就是在请求行)上,安全级别低,不支持大数据

                *post把参数封装在请求体中,安全级别高,支持大数据。

        *请求地址

            *请求资源

        *协议版本

            *HTTP/1.1

    *请求头

        *Accept: text/html,image/*                            

        *Accept-Charset: ISO-8859-1                客户端字符集

        *Accept-Encoding: gzip                         客户端支持编码类型gzip压缩格式 

        *Accept-Language:zh-cn                       客户端语言

        *Host: www.itcast.com:80                       访问服务器地址 

        *If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT  (重要) 和Last-Modified一起使用 控制缓存

        *Referer: http://www.itcast.com/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 请求时间 

         

        *重要的头

            *If-Modified-Since    必须和响应头信息一起来完成控制缓存

            *Referer    当前网页的来源。(防止盗链)

            *User-Agent  判断当前浏览器的版本

        

    *空行

    *请求体

        *封装post参数列表


四、响应内容

技术分享

响应行

        协议版本

            HTTP/1.1

        状态码

            200    请求成功处理,一切OK

            302    请求重定向    

            304    服务器资源没有改动,通知客户端查找本地缓存

            404    客户端访问资源不存在

            500    服务器内部错误

        状态描述

响应头

        Location: http://www.it315.org/index.jsp 

        Server:apache tomcat

        Content-Encoding: gzip 

        Content-Length: 80 

        Content-Language: zh-cn 

        Content-Type: text/html; charset=GB2312 

        Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT

        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

        

        重要的头

            Location和302    一起完成重定向

            Last-Modified和If-Modified-Since以及304    控制缓存

            Refresh    页面的定时跳转

            Content-Disposition  设置文件是以附件的形式下载

            

            Expires: -1

            Cache-Control: no-cache             禁用缓存 (网银)

            Pragma: no-cache   

空行

响应体

本文出自 “11831428” 博客,请务必保留此出处http://11841428.blog.51cto.com/11831428/1905633

HTTP协议