一】客服端  -->  服务端
        1》结构
            a)请求行
            b)请求头
            c)请求体:请求的内容,如果没有,就是空白字符
        2》请求(客户端)    
            请求详细:
                1》请求行
                GET(请求的方式)    /books/java.html(请求的目标资源) HTTP/1.1(请求采用的协议和版本号)
                2》多行请求头
                Accept:*/*    (客户端能接受的资源类型)    
                Accept-Charset:GBK  (客户端支持的编码格式)            
                Accept-Language:en-us(客户端接受的语言类型:中文、英文等)
                Connection:Keep-Alive    (发出请求后,维持客户端和服务端的连接关系)
                Host:localhost:8080                (连接的目标主机和端口号)
                Referer: http://localhost/links.asp    (来自于哪里)
                User-Agent:Mozila/4.0        (客户端版本号的名字)
                Accept-Encoding: gzip, deflate    (客户端能够接收的压缩的数据的类型)
                If-Modified-Since:Tue,11 Jul 2014 18:23:50 GMT  (缓存的时间)
                Cookie(客户端暂存服务端的信息)
                Date:TUe,11 JUl 2013 18:33:34 GMT (客户端请求服务端的时间)
                3》请求的内容(没有就空白字符)即:请求体
    二】常用的提交方式
            1)GET
                    特点:
                    1》求参数无论多少,都会跟着URL后面传到服务端,并且以明文的方式。    
                    2》GET传递会收到浏览器的限制,有长度的限制。
                    3》GET方式传递信息不安全。
                                
            2)POST
                    特点:
                    1》请求参数无论多少,都不会跟着URL后面传到服务器,而是以参数形式在求体中传递到服务端
                    2》POST方式传递无大小限制
                    3》GET方式传递信息相对安全
                    4》传送的数据量无限制,还可以用于文件的下载
    三】服务端 ---> 客户端
        1)结构:
                a、一个状态行
                b、若干个消息头
                c、实体内容
        2)详细
            Http/1.1    (相应采用的协议和版本号)  200(状态码)    ok(描述信息)
            Location: http://www.baidu.com(服务端需要让客户端去访问的页面路径)
        Server:apache tomcat(服务端的Web服务器名)
        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(服务端要求客户端1秒钟后,刷新,然后访问指定的页面路径)
        Content-Disposition: attachment; filename=aaa.zip(服务端要求客户端以下载文件的方式打开该文件)
        Transfer-Encoding: chunked(分块传递数据到客户端)  
        Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务端发送到客户端的暂存数据)
        Expires: -1(服务端禁止客户端缓存页面数据//3种包含下面的2种)
        Cache-Control: no-cache(服务端禁止客户端缓存页面数据)  
        Pragma: no-cache(服务端禁止客户端缓存页面数据)   
        Connection: close/Keep-Alive(维护客户端和服务端的连接关系,1.0用close,1.1用Keep-Alive)  
        Date: Tue, 11 Jul 2000 18:23:51 GMT(服务端响应客户端的时间)
                
    四】状态码        
            302:重定向。客户端请求服务端,但服务端没有对应的资源,服务端要求客户端再次请求找其它的服务端,即客户端二次请求。
            307:转发。客户端请求服务端,但服务端没有对应的资源,服务端自行请求去找其它的服务段,即客户端一次请求。
            304:客户端请求服务端,但此时客户端缓存中有这个资源,无需再从服务端下载新的内容,此时服务端叫客服端自行找缓存。优化常用的方式。
            404:服务端没有此资源。
            500:客户端请求的资源服务端存在,但在执行的时候出错了。
    总结:
            想让浏览器有何种行为,服务端只能通过响应头的方式来设置
            想让浏览器知道何种行为,浏览器只能通过请求头的方式来请求

最新文章

  1. 提高前端开发效率必备AngularJS (基础)
  2. composer 报 zlib_decode(): data error
  3. 纯CSS写三角形-border法
  4. Laxcus大数据管理系统2.0(13)- 总结
  5. wxPython Modal Dialog 模式对话框
  6. windows下MongoDB的安装及配置
  7. Codeforces325-B(二分搜索)
  8. [Python学习] 模块三.基本字符串
  9. SQL Server 连接问题-TCP/IP
  10. win10应用 UWP 使用MD5算法
  11. linux php --ini
  12. java项目打包成可运行的jar,main方法带参数
  13. 获取天气预报API
  14. mysql 导出数据时进行压缩
  15. Nodejs学习资源汇总
  16. 配置使用 NTP
  17. Proxy account failing to run SSIS Error (Proxy (11) is not allowed for subsystem "SSIS" and user "AB\testuser ".
  18. C#高效新增数据到数据库(十万级别测试)
  19. python学习——练习题(8)
  20. 最简单的PS渐变导入方法 photoshop渐变插件素材导入教程

热门文章

  1. 关于标准C语言的预定义宏
  2. Dijkstra优先队列优化
  3. UVA 195 Anagram
  4. 深入理解linux网络技术内幕读书笔记(五)--网络设备初始化
  5. 警告: 隐式声明与内建函数‘exit’不兼容 [默认启用]
  6. markdown转dokuwiki
  7. Lesson2.1:LinkedList、ConcurrentLinkedQueue、LinkedBlockingQueue对比分析
  8. lesson1:压测普通网页
  9. Javascript:sort()方法快速实现对数组排序
  10. cocos2dx--cocos2dx3.1.1执行报无法解析的外部符号